<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.satnogs.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Comzeradd</id>
	<title>SatNOGS Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.satnogs.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Comzeradd"/>
	<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/Special:Contributions/Comzeradd"/>
	<updated>2026-05-30T21:41:48Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.32.0</generator>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=Continuous_Development&amp;diff=2105</id>
		<title>Continuous Development</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=Continuous_Development&amp;diff=2105"/>
		<updated>2018-06-05T14:55:50Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: CD page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Continuous Deployment workflow for both Netowrk and DB consists of the three steps below.&lt;br /&gt;
&lt;br /&gt;
=== GitLab CI ===&lt;br /&gt;
&lt;br /&gt;
We have two different jobs (stage and production) that are triggered when there is a new merge on dev or master respectively. These jobs can been seen at the [https://gitlab.com/librespacefoundation/satnogs/satnogs-network/blob/dev/.gitlab-ci.yml .gitlab-ci.yml] file on both of these repositories.&lt;br /&gt;
&lt;br /&gt;
=== GitLab Variables ===&lt;br /&gt;
&lt;br /&gt;
GitLab hosts some secret variables for each environment. Such as IP address, ssh keypairs, etc. GitLab CI uses that variables to remotely push the new code to the servers.&lt;br /&gt;
&lt;br /&gt;
=== Git Hooks ===&lt;br /&gt;
&lt;br /&gt;
On servers there is a post-update git hook that runs the deployment tasks (collectstatic, reload gunicorn, etc), on each push.&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=MediaWiki:Spam-whitelist&amp;diff=1993</id>
		<title>MediaWiki:Spam-whitelist</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=MediaWiki:Spam-whitelist&amp;diff=1993"/>
		<updated>2018-04-05T09:03:30Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: whitelist aliexpress&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; #&amp;lt;!-- leave this line exactly as it is --&amp;gt; &amp;lt;pre&amp;gt;&lt;br /&gt;
# External URLs matching this list will *not* be blocked even if they would&lt;br /&gt;
# have been blocked by blacklist entries.&lt;br /&gt;
#&lt;br /&gt;
# Syntax is as follows:&lt;br /&gt;
#   * Everything from a &amp;quot;#&amp;quot; character to the end of the line is a comment&lt;br /&gt;
#   * Every non-blank line is a regex fragment which will only match hosts inside URLs&lt;br /&gt;
&lt;br /&gt;
aliexpress\.com&lt;br /&gt;
&lt;br /&gt;
 #&amp;lt;/pre&amp;gt; &amp;lt;!-- leave this line exactly as it is --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=Adjusting_the_SatNOGS_Client&amp;diff=1987</id>
		<title>Adjusting the SatNOGS Client</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=Adjusting_the_SatNOGS_Client&amp;diff=1987"/>
		<updated>2018-03-17T11:53:14Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Fix link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;(This page is a port of [https://community.libre.space/t/how-to-do-some-client-adjustments/1604/1 DL4PD's excellent post] to the SatNOGS forum.)&lt;br /&gt;
&lt;br /&gt;
== Prerequisites / dependencies ==&lt;br /&gt;
&lt;br /&gt;
This page assumes:&lt;br /&gt;
&lt;br /&gt;
* you've read all the [[Get Started|Getting Started]] page, as well as the pages linked under &amp;quot;Build&amp;quot; and &amp;quot;Operate&amp;quot; on the [[Main Page]]&lt;br /&gt;
* you've already made your [[Operation|first observations]] and have some waterfalls in the [[Network]]&lt;br /&gt;
* you've installed [http://gqrx.dk/download install gqrx] on your local computer.&lt;br /&gt;
&lt;br /&gt;
== SatNOGS station adjustments ==&lt;br /&gt;
&lt;br /&gt;
Now you've come to a point where you want to know how well your station is performing.  The first step is to determine your frequency offset.&lt;br /&gt;
&lt;br /&gt;
To start, please connect to your Raspberry Pi's local web interface. By default the URL is something like &amp;quot;http://192.168.0.5:5000&amp;quot;; you'll need to figure out what it is for your client. In the upper right corner there is a big green button where you can set your ground station in standalone mode.&lt;br /&gt;
&lt;br /&gt;
Here's how it looks in network mode:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;[[File:SatNOGS_local_network_mode.png|center|600px]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And here's how it looks when it's switched to standalone mode:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;[[File:SatNOGS_local_standalone_mode.png|center|600px]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Message|&lt;br /&gt;
* Do not forget to set this back to network mode when done with your adjustments!&lt;br /&gt;
* While your station is in standalone mode, no observations from the SatNOGS network will be executed!}}&lt;br /&gt;
&lt;br /&gt;
After setting to standalone mode, please SSH to your SatNOGS Pi with your well-known user account; by default, this is the user &amp;quot;pi&amp;quot;.  After successful authorization you will see a prompt like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 Linux satnogs190-dev 4.9.59-v7+ #1047 SMP Sun Oct 29 12:19:23 GMT 2017 armv7l&lt;br /&gt;
&lt;br /&gt;
 The programs included with the Debian GNU/Linux system are free software;&lt;br /&gt;
 the exact distribution terms for each program are described in the&lt;br /&gt;
 individual files in /usr/share/doc/*/copyright.&lt;br /&gt;
&lt;br /&gt;
 Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent&lt;br /&gt;
 permitted by applicable law.&lt;br /&gt;
 Last login: Fri Jan 12 07:34:11 2018 from 192.168.10.35&lt;br /&gt;
 pd@satnogs190-dev:~ $&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now go ahead and start the &amp;quot;RTL SDR spectrum server&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
 $ rtl_tcp -a 0.0.0.0&lt;br /&gt;
&lt;br /&gt;
If everything is fine, you will get an output like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 Found 1 device(s):&lt;br /&gt;
   0:  Generic, RTL2832U, SN: 77771111153705700&lt;br /&gt;
&lt;br /&gt;
 Using device 0: Generic RTL2832U&lt;br /&gt;
 Found Rafael Micro R820T tuner&lt;br /&gt;
 [R82XX] PLL not locked!&lt;br /&gt;
 Tuned to 100000000 Hz.&lt;br /&gt;
 listening...&lt;br /&gt;
&lt;br /&gt;
Use the device argument 'rtl_tcp=0.0.0.0:1234' in OsmoSDR (gr-osmosdr) source to receive samples in GRC and control rtl_tcp parameters (frequency, gain, ...). No further output will be generated until you connect to this server. Hitting C-c will stop it and the command line appears. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Message|You will have to stop this server if you want to go back to network mode - do not forget about this!}}&lt;br /&gt;
&lt;br /&gt;
Now go ahead and start gqrx:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;[[File:Startup_gqrx.png|center|600px]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You will have to go to the setup menu, either by clicking on the &amp;quot;harde&amp;quot; symbol, or navigating through the menu item called &amp;quot;File -&amp;gt; I/O Devices&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;[[File:Gqrx_io_configuration.png|center]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Click on &amp;quot;Device&amp;quot; and chose &amp;quot;RTL-SDR Spectrum Server&amp;quot;&lt;br /&gt;
Edit &amp;quot;Device string&amp;quot; to match your Pi's IP address, Port defaults to 1234,&lt;br /&gt;
which is the same as the default setting for your server you just started on&lt;br /&gt;
the Pi.&lt;br /&gt;
Set &amp;quot;Input Rate&amp;quot; to something network friendly - we do not need the whole spectrum the RTL SDR is able to convert. 1,8 MSPS (1800000) should be OK&lt;br /&gt;
Depending on this setting your network will get very busy. Using wireless LAN is not recommended. Every sample has a data size of 16 bits, so the previous setting of 1,8MSPS/s results in a network load of 28,8 MBit/s:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;1,8 MSPS * 16 bit/s = 28,8 MBit/s&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Audio Output -&amp;gt; Device&amp;quot; and &amp;quot;-&amp;gt; Sample rate&amp;quot; should be set by default,&lt;br /&gt;
values on average soundcards would be something like &amp;quot;Default, 48 kHz&amp;quot;&lt;br /&gt;
Close the dialogue by clicking &amp;quot;OK&amp;quot;&lt;br /&gt;
Your RTL-SDR spectrum server on the Pi should now show up a connection from&lt;br /&gt;
your computer running gqrx.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 client accepted!&lt;br /&gt;
 set gain mode 1&lt;br /&gt;
 set agc mode 0&lt;br /&gt;
 set direct sampling 0&lt;br /&gt;
 Disabled direct sampling mode&lt;br /&gt;
 set offset tuning 0&lt;br /&gt;
 set sample rate 960000&lt;br /&gt;
 ll+, now 1&lt;br /&gt;
 ll+, now 2&lt;br /&gt;
 set freq correction 42&lt;br /&gt;
 set freq 144500000&lt;br /&gt;
 set gain mode 0&lt;br /&gt;
 set agc mode 1&lt;br /&gt;
 set gain 0&lt;br /&gt;
 set freq 145814000&lt;br /&gt;
 ll-, now 0&lt;br /&gt;
 ll+, now 1&lt;br /&gt;
 ll+, now 2&lt;br /&gt;
 ll+, now 3&lt;br /&gt;
 ll+, now 4&lt;br /&gt;
 ll+, now 5&lt;br /&gt;
 ll+, now 6&lt;br /&gt;
 ll+, now 7&lt;br /&gt;
 ll+, now 8&lt;br /&gt;
 ll+, now 9&lt;br /&gt;
 ll+, now 10&lt;br /&gt;
 ll+, now 11&lt;br /&gt;
 ll+, now 12&lt;br /&gt;
 ll+, now 13&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The only thing left now is to &amp;quot;Start DSP&amp;quot; - from the menu item &amp;quot;File&amp;quot;, by hitting C-d or simply clicking the Play-Button.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;[[File:Gqrx_running.png|center|600px]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Go for a known local HAM radio repeater or a CW beacon transmitter and set your demodulator accordingly. Narrow Band FM or CW is best to discover ppm error offset, which is the frequency offset in parts per million (ppm) which is always there with standard RTL-SDR dongles. It is also highly temperature dependent, so one might have to re-evaluate this from time to time. Enter the known frequency of your chosen transmitter (NFM repaeter or CW beacon). I have chosen a very known CW beacon just some km away from my home: ON4VHF on 144.718000 MHz. Walk through the tab called &amp;quot;Receiver options&amp;quot; and change the settings to fit the beacon: &amp;quot;Filter width Normal&amp;quot;, &amp;quot;Filter shape Normal&amp;quot;, &amp;quot;Mode CW-L&amp;quot;, &amp;quot;AGC Medium&amp;quot;. Set Squelch to something low, so you can hear noise from your speakers. Maybe you have to Adjust the audio &amp;quot;Gain&amp;quot; to something like &amp;quot;0.0 dB&amp;quot;. You can adjust this to fit your needs to hear noise. With ppm error, which is default, set to 0.0 ppm, one can just guess where your receiver is listening. Anyway, just set it to 144.718000 MHz and try to find your beacon. You can see the result for my RTL SDR dongle down here:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;[[File:Gqrx_ppm-error_offset.png|center|600px]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now got to the tab called &amp;quot;Input controls&amp;quot; and find an input field called &amp;quot;Freq. correction&amp;quot;. By default this should show &amp;quot;0,0 ppm&amp;quot;. Set frequency back to your beacons transmit frequency. After this you have to increase the Freq. correction value as long until you can hear the beacon. Now zoom into the panorama by locating your mouse pointer in the range where the frequency values are printed below the panorama, just above the waterfall. Try to fit the Freq. correction value as good as possible, that your receivers red indication line is just in the middle of the transmitters bandwidth.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;[[File:Gqrx_ppm-error_corrected.png|center]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now write down the evaluated ppm correction value and exit gqrx as well as the RTL SDR spectrum server. In the command line now available start satnogs-setup:&lt;br /&gt;
&lt;br /&gt;
 $ sudo satnogs-setup&lt;br /&gt;
&lt;br /&gt;
Navigate to &amp;quot;Advanced -&amp;gt; SATNOGS_PPM_ERROR&amp;quot; and enter the new value.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;[[File:Fcecd26ca08cf3d23dffce719ef1dd13a4f7109d.png|center]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Exit the satnogs-setup with &amp;quot;Back&amp;quot;, then &amp;quot;Apply Configuration&amp;quot; (this might take a while) and &amp;quot;Back&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
You are done with frequency offset correction.&lt;br /&gt;
&lt;br /&gt;
{{Message|With gqrx, you get a nice tool to do some SDR stuff by the way. Just play around a bit and get familiar with all that stuff. Just keep in mind that, as long as you run the RTL SDR Spectrum server or you have set your client into standalone mode, nothing is done from network.}}&lt;br /&gt;
&lt;br /&gt;
== Enhancements ==&lt;br /&gt;
&lt;br /&gt;
=== Waterfall color improvements ===&lt;br /&gt;
&lt;br /&gt;
To get some nicer waterfalls one has to dig into waterfall plotting script. This is a static one and, so far, cannot be configured through satnogs-setup. Anyway: there is no magic behind it and one can understand what the changes are once you have seen them.&lt;br /&gt;
&lt;br /&gt;
Log into the Pi and start at making a copy of /usr/share/satnogs/scripts/satnogs_waterfall.gp, just in case:&lt;br /&gt;
&lt;br /&gt;
 $ cp /usr/share/satnogs/scripts/satnogs_waterfall.gp ~/.&lt;br /&gt;
&lt;br /&gt;
Now you can start editing the script:&lt;br /&gt;
&lt;br /&gt;
 $ sudo nano /usr/share/satnogs/scripts/satnogs_waterfall.gp&lt;br /&gt;
&lt;br /&gt;
Search for a line starting with cbtics:&lt;br /&gt;
&lt;br /&gt;
 # Spectravue palette and scale&lt;br /&gt;
 set cbtics (-110, -105, -100, -95, -90, -85, -80, -75, -70, -65, -60, -55, -50, -55, -40)&lt;br /&gt;
&lt;br /&gt;
Comment it out by adding a #, copy, paste and edit that new line that it matches something like this:&lt;br /&gt;
&lt;br /&gt;
 # Spectravue palette and scale&lt;br /&gt;
 #set cbtics (-110, -105, -100, -95, -90, -85, -80, -75, -70, -65, -60, -55, -50, -55, -40)&lt;br /&gt;
 set cbtics (-90, -85, -80, -75, -70, -65, -60, -55, -50, -55, -45, -40, -35, -40, -25)&lt;br /&gt;
&lt;br /&gt;
Now go ahead and find a line with cbrange:&lt;br /&gt;
&lt;br /&gt;
 set ylabel 'Time (seconds)'&lt;br /&gt;
 set cbrange [-100:-50]&lt;br /&gt;
&lt;br /&gt;
I guess, one already gets the point - change cbrange to match the new cbtics:&lt;br /&gt;
&lt;br /&gt;
 set ylabel 'Time (seconds)'&lt;br /&gt;
 #set cbrange [-100:-50]&lt;br /&gt;
 set cbrange [-85:-35]&lt;br /&gt;
&lt;br /&gt;
Save the file and you are done. Schedule some observations and watch the new colors. Maybe you can just improve it a little more but keep in mind: always keep a bit of the noise floor into the waterfalls, so you can see the whole signals dynamic range. I love it, when there are only a few dots of the noise.&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=Operation&amp;diff=1986</id>
		<title>Operation</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=Operation&amp;diff=1986"/>
		<updated>2018-03-17T11:51:12Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Remove production wording&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Scheduling your first test observation ==&lt;br /&gt;
&lt;br /&gt;
'''Assumptions:'''&lt;br /&gt;
&lt;br /&gt;
* You've set up your [[Raspberry Pi 3|SatNOGS client successfully]]&lt;br /&gt;
* You've created an account on the [[Network]], created a ground station, and it's showing up as &amp;quot;online&amp;quot;&lt;br /&gt;
&lt;br /&gt;
If you've run into any problems with those steps, check out the [[Troubleshooting]] page or ask for help in [https://community.libre.space/c/satnogs the community forum], [https://riot.im/app/#/room/#satnogs:matrix.org the Matrix room], or on IRC at #satnogs on Freenode.&lt;br /&gt;
&lt;br /&gt;
'''SatNOGS Network:'''&lt;br /&gt;
&lt;br /&gt;
* Navigate your ground station page in the [https://network.satnogs.org Network Environment] (user name -&amp;gt; &amp;quot;My Profile&amp;quot; -&amp;gt; click on the name of your ground station).&lt;br /&gt;
* Select the &amp;quot;Upcoming passes&amp;quot; tab.&lt;br /&gt;
* Look for a pass with a &amp;quot;schedule&amp;quot; button that isn't greyed out, and click it. Ensure it is a good (high) pass of an operational satellite (check the color bar on the satellite)&lt;br /&gt;
* In the &amp;quot;New Observation&amp;quot; page that comes up, click the &amp;quot;Calculate&amp;quot; button, then click &amp;quot;Schedule&amp;quot;.&lt;br /&gt;
* You should now see a page for that observation; in the &amp;quot;Waterfall&amp;quot; tab, you should see &amp;quot;Waiting for waterfall&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
'''Ground Station'''&lt;br /&gt;
&lt;br /&gt;
Now SSH to your ground station computer and run these steps:&lt;br /&gt;
&lt;br /&gt;
* Follow the satnogs-client logs. Depending on your setup, this might be done with &amp;lt;code&amp;gt;journalctl -f -u satnogs-client.service&amp;lt;/code&amp;gt;, or &amp;lt;code&amp;gt;tail -F /var/log/supervisor/satnogs.log&amp;lt;/code&amp;gt;&lt;br /&gt;
* Before the observation is scheduled to start, you should see your client wake up once per minute to check for new jobs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Oct 02 00:16:02 raspberrypi satnogs-client[10124]: 2017-10-02 00:16:02,477 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:5011&lt;br /&gt;
Oct 02 00:16:02 raspberrypi satnogs-client[10124]: 2017-10-02 00:16:02,479 - satnogsclient - DEBUG - Sending message: [{&amp;quot;origin&amp;quot;: &amp;quot;network&amp;quot;, &amp;quot;transmitter&amp;quot;: &amp;quot;uXJ8NQNcH8b9osRc&lt;br /&gt;
Oct 02 00:16:02 raspberrypi satnogs-client[10124]: 2017-10-02 00:16:02,488 - apscheduler.executors.default - INFO - Job &amp;quot;get_jobs (trigger: interval[0:01:00], next run at: 2&lt;br /&gt;
Oct 02 00:16:59 raspberrypi satnogs-client[10124]: 2017-10-02 00:16:59,615 - apscheduler.executors.default - INFO - Running job &amp;quot;get_jobs (trigger: interval[0:01:00], next r&lt;br /&gt;
Oct 02 00:16:59 raspberrypi satnogs-client[10124]: 2017-10-02 00:16:59,661 - apscheduler.executors.default - INFO - Running job &amp;quot;post_data (trigger: interval[0:02:00], next &lt;br /&gt;
Oct 02 00:16:59 raspberrypi satnogs-client[10124]: 2017-10-02 00:16:59,668 - apscheduler.executors.default - INFO - Job &amp;quot;post_data (trigger: interval[0:02:00], next run at: &lt;br /&gt;
Oct 02 00:17:00 raspberrypi satnogs-client[10124]: 2017-10-02 00:17:00,906 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:5011&lt;br /&gt;
Oct 02 00:17:00 raspberrypi satnogs-client[10124]: 2017-10-02 00:17:00,908 - satnogsclient - DEBUG - Sending message: [{&amp;quot;origin&amp;quot;: &amp;quot;network&amp;quot;, &amp;quot;transmitter&amp;quot;: &amp;quot;uXJ8NQNcH8b9osRc&lt;br /&gt;
Oct 02 00:17:00 raspberrypi satnogs-client[10124]: 2017-10-02 00:17:00,912 - apscheduler.executors.default - INFO - Job &amp;quot;get_jobs (trigger: interval[0:01:00], next run at: 2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* At the scheduled time for the observation, you should see the client kick off the observation:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Oct 02 00:18:00 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:00,774 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:5011&lt;br /&gt;
Oct 02 00:18:00 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:00,776 - satnogsclient - DEBUG - Sending message: [{&amp;quot;origin&amp;quot;: &amp;quot;network&amp;quot;, &amp;quot;transmitter&amp;quot;: &amp;quot;uXJ8NQNcH8b9osRc&lt;br /&gt;
Oct 02 00:18:00 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:00,781 - apscheduler.executors.default - INFO - Job &amp;quot;get_jobs (trigger: interval[0:01:00], next run at: 2&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,022 - apscheduler.executors.default - INFO - Running job &amp;quot;spawn_observer (trigger: date[2017-10-02 00:&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,082 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:4533&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,109 - satnogsclient - DEBUG - Sending message: p&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,110 - satnogsclient - DEBUG - Received message: 0.000000&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 0.000000&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,111 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:4532&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,115 - satnogsclient - DEBUG - Sending message: P 188.276951189 -0.0155264223734&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,119 - satnogsclient - DEBUG - Received message: RPRT -1&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,143 - satnogsclient - DEBUG - Sending message: F 436038107&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,144 - satnogsclient - DEBUG - Received message: RPRT 0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* After the observation is over, you should see the client submit the data to the SatNOGS network&lt;br /&gt;
&lt;br /&gt;
In the SatNOGS Stage Environment, refresh the Observation page.  You should now see a waterfall plot for your data.&lt;br /&gt;
&lt;br /&gt;
If that all worked -- congratulations!  You've just successfully completed your first SatNOGS observation.&lt;br /&gt;
&lt;br /&gt;
If it didn't work, don't feel bad -- it can take a few attempts before you get it right.  Have a look at the [[Troubleshooting]] page for tips, and don't forget to contact the community if you need help.&lt;br /&gt;
&lt;br /&gt;
== Rating observations ==&lt;br /&gt;
&lt;br /&gt;
Once your observation results are posted back in the Network by your satnogs-client, you should go to Network to rate your observations. Any orange marked observations need vetting by users.&lt;br /&gt;
{{Message|The main purpose of validating observations is to know if the satellite/transmitter is alive, if it transmits in the listed frequency/ies, and if the TLEs we have are accurate.}}&lt;br /&gt;
{{Message|The functionality may change in the future, but for now even a faint sign on the waterfall is enough to make it valid.}}&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot from 2017-10-15 11-59-59.png|frame|Orange need your rating!]]&lt;br /&gt;
&lt;br /&gt;
Categories of observations:&lt;br /&gt;
&lt;br /&gt;
* '''Good'''&lt;br /&gt;
** You should mark observations as &amp;quot;Good&amp;quot; when it is clear from the waterfall and/or audio recording that a satellite is present.&lt;br /&gt;
* '''Bad'''&lt;br /&gt;
** You should mark observations as &amp;quot;Bad&amp;quot; when by examining the waterfall and/or audio it is obvious that there was no satellite detected in this observation.&lt;br /&gt;
* '''Failed'''&lt;br /&gt;
** You should mark observations as &amp;quot;Failed&amp;quot; when the station failed entirely: the waterfall and/or audio is empty or not present, or there's too much noise.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Below is a collection of waterfalls with possible results of observations:&lt;br /&gt;
&amp;lt;gallery heights=400px widths=200px&amp;gt;&lt;br /&gt;
File:Waterfall_20657_2017-10-15T10-07-51.png|'''Good''': Satellite is visible (bars-bursts of data in the middle). ''Note that the tangent-shaped lines are local noise''&lt;br /&gt;
File:Waterfall_20534_2017-10-15T07-21-24.png|'''Bad''': Typical empty waterfall with no visible signals.&lt;br /&gt;
File:Waterfall 20499 2017-10-15T07-17-32.png|'''Good''': Although drifting, satellite is clearly visible around the center.&lt;br /&gt;
File:Waterfall 20506 2017-10-15T06-47-36.png|'''Good''': Faint CW signal around center-left. ''Note you might have to expand image to notice it''&lt;br /&gt;
File:Waterfall_20571_2017-10-15T05-25-56.png|'''Good''': Clearly visible FM transmission. ''Note that the swinging lines are terrestrial noise''&lt;br /&gt;
File:Waterfall 20483 2017-10-15T05-12-49.png|'''Good''': Straight line in the center bottom is a satellite. ''Note transmission on left bottom is the same satellite on a different frequency''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:Observation_with_discuss_button_highlighted.png|thumb|frame|Click the &amp;quot;Discuss&amp;quot; button to post in our web forum. (Note: this will only appear in the SatNOGS network.)]]&lt;br /&gt;
&lt;br /&gt;
=== Discuss ===&lt;br /&gt;
If you're still unsure about an observation, click the &amp;quot;Discuss&amp;quot; button, near the top right of the observation's page; that will post a link to it on [https://community.libre.space/c/observations the Observations forum], where you can ask for feedback.&lt;br /&gt;
&lt;br /&gt;
== Scheduling observations in standalone mode ==&lt;br /&gt;
&lt;br /&gt;
=== Scheduling a NOAA observation in standalone mode ===&lt;br /&gt;
&lt;br /&gt;
Instructions for scheduling a NOAA observation, including decoding of the APT images, can be found [http://ixion.csd.uoc.gr/vardakis/index.php/satnogs-noaa-apt-decoder-walkthrough/ here].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Network permissions matrix ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;col&amp;quot;| Group&lt;br /&gt;
! scope=&amp;quot;col&amp;quot;| Schedule observation&lt;br /&gt;
! scope=&amp;quot;col&amp;quot;| Delete observation&lt;br /&gt;
! scope=&amp;quot;col&amp;quot;| Vet observation&lt;br /&gt;
! scope=&amp;quot;col&amp;quot;| Discuss observation&lt;br /&gt;
|-&lt;br /&gt;
| Auth users&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Any&lt;br /&gt;
|-&lt;br /&gt;
| Station owners&lt;br /&gt;
| Any (on online stations) &amp;amp; Own stations (on test stations)&lt;br /&gt;
| Own (stations or observations)&lt;br /&gt;
| Own (stations or observations)&lt;br /&gt;
| Any&lt;br /&gt;
|-&lt;br /&gt;
| Moderators&lt;br /&gt;
| Any (on online stations)&amp;amp; Own stations (on test stations)&lt;br /&gt;
| Any&lt;br /&gt;
| Any&lt;br /&gt;
| Any&lt;br /&gt;
|-&lt;br /&gt;
| Admins&lt;br /&gt;
| Any&lt;br /&gt;
| Any&lt;br /&gt;
| Any&lt;br /&gt;
| Any&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=Main_Page&amp;diff=1985</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=Main_Page&amp;diff=1985"/>
		<updated>2018-03-17T11:49:22Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&amp;lt;p&amp;gt;SatNOGS is an integral part of the [https://libre.space Libre Space Foundation]. The project aims to build a global network of satellite ground stations. Designed as an open source participatory project which is straightforward to build using commonly available parts and some 3D printed elements. A ground station is built to interact with a website that holds key satellite information. The web interface allows a user to schedule a satellite observation of any of the networked ground stations.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;Here you can find more information on how to get started with SatNOGS, building and operating a satellite ground station and joining the SatNOGS Network.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;A SatNOGS ground station can be made in a variety of ways. The reference design uses a Raspberry Pi and RTL-SDR dongle with either stationary antennas or either a SatNOGS rotator or a commercial amateur radio rotator. There is provision to use amateur radio transceivers or alternative SDR technology. The image below explains the system.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[File:Satnogs_imagemap.png|center]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;border-radius: 3px; width: 16%; height: 300px; background-color: #f6f6f6; float: left; display: block; margin: 1.5%; border: 1px solid #A7D7F9; text-align: center; padding: 2.5%; padding-top: 0px;&amp;quot;&amp;gt;&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&amp;lt;h2&amp;gt;What is SatNOGS&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Intro|Intro to SatNOGS]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Ground Stations|Intro to ground stations]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Glossary]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;border-radius: 3px; width: 16%; height: 300px; background-color: #f6f6f6; float: left; display: block; margin: 1.5%; border: 1px solid #A7D7F9; text-align: center; padding: 2.5%; padding-top: 0px;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Build&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Get_Started|Learn how to get started]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Build|Build a ground station]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Rotators|Rotators]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Antennas|Antennas]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Radio|Signal Reception]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;border-radius: 3px; width: 16%; height: 300px; background-color: #f6f6f6; float: left; display: block; margin: 1.5%; border: 1px solid #A7D7F9; text-align: center; padding: 2.5%; padding-top: 0px;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Operate&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Network|SatNOGS Network]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Operation|Scheduling your first observation and operating your station]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Adjusting the SatNOGS Client|Tuning and adjusting your station]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Satnogs DB]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;border-radius: 3px; width: 16%; height: 300px; background-color: #f6f6f6; float: left; display: block; margin: 1.5%; border: 1px solid #A7D7F9; text-align: center; padding: 2.5%; padding-top: 0px;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Contribute&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Software contribution]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Provide documentation]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Satnogs DB]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Troubleshooting|Troubleshooting]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Get_In_Touch|Get in touch and ask for help]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=Main_Page&amp;diff=1984</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=Main_Page&amp;diff=1984"/>
		<updated>2018-03-17T11:49:06Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Remove production wording&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&amp;lt;p&amp;gt;SatNOGS is an integral part of the [https://libre.space Libre Space Foundation]. The project aims to build a global network of satellite ground stations. Designed as an open source participatory project which is straightforward to build using commonly available parts and some 3D printed elements. A ground station is built to interact with a website that holds key satellite information. The web interface allows a user to schedule a satellite observation of any of the networked ground stations.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;Here you can find more information on how to get started with SatNOGS, building and operating a satellite ground station and joining the SatNOGS Network.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;A SatNOGS ground station can be made in a variety of ways. The reference design uses a Raspberry Pi and RTL-SDR dongle with either stationary antennas or either a SatNOGS rotator or a commercial amateur radio rotator. There is provision to use amateur radio transceivers or alternative SDR technology. The image below explains the system.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[File:Satnogs_imagemap.png|center]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;border-radius: 3px; width: 16%; height: 300px; background-color: #f6f6f6; float: left; display: block; margin: 1.5%; border: 1px solid #A7D7F9; text-align: center; padding: 2.5%; padding-top: 0px;&amp;quot;&amp;gt;&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&amp;lt;h2&amp;gt;What is SatNOGS&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Intro|Intro to SatNOGS]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Ground Stations|Intro to ground stations]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Glossary]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;border-radius: 3px; width: 16%; height: 300px; background-color: #f6f6f6; float: left; display: block; margin: 1.5%; border: 1px solid #A7D7F9; text-align: center; padding: 2.5%; padding-top: 0px;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Build&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Get_Started|Learn how to get started]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Build|Build a ground station]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Rotators|Rotators]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Antennas|Antennas]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Radio|Signal Reception]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;border-radius: 3px; width: 16%; height: 300px; background-color: #f6f6f6; float: left; display: block; margin: 1.5%; border: 1px solid #A7D7F9; text-align: center; padding: 2.5%; padding-top: 0px;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Operate&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[SatNOGS Network]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Operation|Scheduling your first observation and operating your station]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Adjusting the SatNOGS Client|Tuning and adjusting your station]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Satnogs DB]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;border-radius: 3px; width: 16%; height: 300px; background-color: #f6f6f6; float: left; display: block; margin: 1.5%; border: 1px solid #A7D7F9; text-align: center; padding: 2.5%; padding-top: 0px;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Contribute&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Software contribution]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Provide documentation]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Satnogs DB]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Troubleshooting|Troubleshooting]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Get_In_Touch|Get in touch and ask for help]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=SatNOGS_Network&amp;diff=1982</id>
		<title>SatNOGS Network</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=SatNOGS_Network&amp;diff=1982"/>
		<updated>2018-03-17T11:48:38Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Comzeradd moved page Network (Production) to Network: Remove development documentation from the wiki&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Scope==&lt;br /&gt;
&lt;br /&gt;
SatNOGS Network website is where the scheduling, reviewing and operations happen for the SatNOGS project. The instance can be found in [https://network.satnogs.org network.satnogs.org]&lt;br /&gt;
&lt;br /&gt;
==Getting started==&lt;br /&gt;
&lt;br /&gt;
* Head to https://network.satnogs.org/accounts/signup/ to create a new account&lt;br /&gt;
* Verify your email&lt;br /&gt;
&lt;br /&gt;
Now you're ready to create a ground station!&lt;br /&gt;
&lt;br /&gt;
===Creating a ground station===&lt;br /&gt;
&lt;br /&gt;
* On your user page, click on &amp;quot;Add Ground Station&amp;quot;&lt;br /&gt;
* Fill out all the information.  You'll need to provide some essential information about your ground station:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Where is the station?  We'll need the height above ground level and [https://en.wikipedia.org/wiki/Maidenhead_Locator_System maidenhead locator]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Is the antenna static, or does it have a rotator?&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;What type of antennas does the station have?&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
All this information is then saved by the network, and used to determine which satellites can be received by your station. This will help other users to schedule passes on your ground station, but it can also help you improve your station. For example, perhaps you would like to receive the latest [https://en.wikipedia.org/wiki/Automatic_picture_transmission NOAA APT weather images] which are VHF transmissions. You could schedule an observation with your ground station and multiple other ground stations in order to determine if your set up has comparable performance. Without the station detail, this would not be possible. &lt;br /&gt;
&lt;br /&gt;
* Finally, head to your client and [[Raspberry_Pi_3#Setup|complete its setup]], using the information you supplied on the Network, plus the API key and the ID you were assigned.&lt;br /&gt;
&lt;br /&gt;
The image below shows the web page for a typical ground station:&lt;br /&gt;
&amp;lt;p&amp;gt;[[File:Dev_ground_station.PNG|center|800px]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Observing a pass===&lt;br /&gt;
&lt;br /&gt;
The central point of the system is the ability to schedule a pass. You'll find all the information about scheduling and how to assess the quality of the observation as part of [[Operation|scheduling your first observation]].&lt;br /&gt;
&lt;br /&gt;
Your station should now appear on the [https://network.satnogs.org/stations/ Ground Stations list] marked as yellow &amp;quot;Testing&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Moving out of testing==&lt;br /&gt;
&lt;br /&gt;
The Network needs reliable ground stations that perform within the constraints that would be expected. A ground station should perform in a way that is comparable to its peers and in line with the constraints of the geography, antenna type, location and the other aspects which will make a ground station different to another.&lt;br /&gt;
&lt;br /&gt;
Once you feel that your station has been performing well for a period of time under the &amp;quot;Testing&amp;quot; flag then you should go ahead and edit the station, remove the testing flag and announce the availability of a new station in our community channels!&lt;br /&gt;
&lt;br /&gt;
The ground station should also be reliable. This does not mean that it should be available 24 hours a day, 7 days a week. Downtime is expected, it should however, not be unduly off line or unreliable.&lt;br /&gt;
&lt;br /&gt;
==What's next?==&lt;br /&gt;
&lt;br /&gt;
* Keep your station busy! Schedule observations or reach out to the community for scheduling help.&lt;br /&gt;
* Keep reviewing your ground station performance.&lt;br /&gt;
* Reach out to others in community for help on any issue.&lt;br /&gt;
&lt;br /&gt;
==Development==&lt;br /&gt;
&lt;br /&gt;
The SatNOGS Network application is a project by itself with constant development. We  test the Network application in our [[Development Environment|development environment]], and [[Software contribution|always welcome python/javascript developers to help us]]!&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=Network_(Production)&amp;diff=1983</id>
		<title>Network (Production)</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=Network_(Production)&amp;diff=1983"/>
		<updated>2018-03-17T11:48:38Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Comzeradd moved page Network (Production) to Network: Remove development documentation from the wiki&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Network]]&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=SatNOGS_Network&amp;diff=1981</id>
		<title>SatNOGS Network</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=SatNOGS_Network&amp;diff=1981"/>
		<updated>2018-03-17T11:48:00Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Remove production wording&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Scope==&lt;br /&gt;
&lt;br /&gt;
SatNOGS Network website is where the scheduling, reviewing and operations happen for the SatNOGS project. The instance can be found in [https://network.satnogs.org network.satnogs.org]&lt;br /&gt;
&lt;br /&gt;
==Getting started==&lt;br /&gt;
&lt;br /&gt;
* Head to https://network.satnogs.org/accounts/signup/ to create a new account&lt;br /&gt;
* Verify your email&lt;br /&gt;
&lt;br /&gt;
Now you're ready to create a ground station!&lt;br /&gt;
&lt;br /&gt;
===Creating a ground station===&lt;br /&gt;
&lt;br /&gt;
* On your user page, click on &amp;quot;Add Ground Station&amp;quot;&lt;br /&gt;
* Fill out all the information.  You'll need to provide some essential information about your ground station:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Where is the station?  We'll need the height above ground level and [https://en.wikipedia.org/wiki/Maidenhead_Locator_System maidenhead locator]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Is the antenna static, or does it have a rotator?&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;What type of antennas does the station have?&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
All this information is then saved by the network, and used to determine which satellites can be received by your station. This will help other users to schedule passes on your ground station, but it can also help you improve your station. For example, perhaps you would like to receive the latest [https://en.wikipedia.org/wiki/Automatic_picture_transmission NOAA APT weather images] which are VHF transmissions. You could schedule an observation with your ground station and multiple other ground stations in order to determine if your set up has comparable performance. Without the station detail, this would not be possible. &lt;br /&gt;
&lt;br /&gt;
* Finally, head to your client and [[Raspberry_Pi_3#Setup|complete its setup]], using the information you supplied on the Network, plus the API key and the ID you were assigned.&lt;br /&gt;
&lt;br /&gt;
The image below shows the web page for a typical ground station:&lt;br /&gt;
&amp;lt;p&amp;gt;[[File:Dev_ground_station.PNG|center|800px]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Observing a pass===&lt;br /&gt;
&lt;br /&gt;
The central point of the system is the ability to schedule a pass. You'll find all the information about scheduling and how to assess the quality of the observation as part of [[Operation|scheduling your first observation]].&lt;br /&gt;
&lt;br /&gt;
Your station should now appear on the [https://network.satnogs.org/stations/ Ground Stations list] marked as yellow &amp;quot;Testing&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Moving out of testing==&lt;br /&gt;
&lt;br /&gt;
The Network needs reliable ground stations that perform within the constraints that would be expected. A ground station should perform in a way that is comparable to its peers and in line with the constraints of the geography, antenna type, location and the other aspects which will make a ground station different to another.&lt;br /&gt;
&lt;br /&gt;
Once you feel that your station has been performing well for a period of time under the &amp;quot;Testing&amp;quot; flag then you should go ahead and edit the station, remove the testing flag and announce the availability of a new station in our community channels!&lt;br /&gt;
&lt;br /&gt;
The ground station should also be reliable. This does not mean that it should be available 24 hours a day, 7 days a week. Downtime is expected, it should however, not be unduly off line or unreliable.&lt;br /&gt;
&lt;br /&gt;
==What's next?==&lt;br /&gt;
&lt;br /&gt;
* Keep your station busy! Schedule observations or reach out to the community for scheduling help.&lt;br /&gt;
* Keep reviewing your ground station performance.&lt;br /&gt;
* Reach out to others in community for help on any issue.&lt;br /&gt;
&lt;br /&gt;
==Development==&lt;br /&gt;
&lt;br /&gt;
The SatNOGS Network application is a project by itself with constant development. We  test the Network application in our [[Development Environment|development environment]], and [[Software contribution|always welcome python/javascript developers to help us]]!&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=File:SatNOGS_client_screenshot.png&amp;diff=1918</id>
		<title>File:SatNOGS client screenshot.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=File:SatNOGS_client_screenshot.png&amp;diff=1918"/>
		<updated>2017-12-23T19:50:29Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Comzeradd uploaded a new version of File:SatNOGS client screenshot.png&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot of status page from SatNOGS client&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=Main_Page&amp;diff=1898</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=Main_Page&amp;diff=1898"/>
		<updated>2017-12-04T12:26:20Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Fit boxes to one row&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&amp;lt;p&amp;gt;SatNOGS is an integral part of the [https://libre.space Libre Space Foundation]. The project aims to build a global network of satellite ground stations. Designed as an open source participatory project which is straightforward to build using commonly available parts and some 3D printed elements. A ground station is built to interact with a website that holds key satellite information. The web interface allows a user to schedule a satellite observation of any of the networked ground stations.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;Here you can find more information on how to get started with SatNOGS, building and operating a satellite ground station and joining the SatNOGS Network.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;A SatNOGS ground station can be made in a variety of ways. The reference design uses a Raspberry Pi and RTL-SDR dongle with either stationary antennas or either a SatNOGS rotator or a commercial amateur radio rotator. There is provision to use amateur radio transceivers or alternative SDR technology. The image below explains the system.The image below explains the system.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[File:Satnogs_imagemap.png|center]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;border-radius: 3px; width: 16%; height: 200px; background-color: #f6f6f6; float: left; display: block; margin: 1.5%; border: 1px solid #A7D7F9; text-align: center; padding: 2.5%; padding-top: 0px;&amp;quot;&amp;gt;&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&amp;lt;h2&amp;gt;What is SatNOGS&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Intro|Intro to SatNOGS]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Ground Stations|Intro to ground stations]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Glossary]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;border-radius: 3px; width: 16%; height: 200px; background-color: #f6f6f6; float: left; display: block; margin: 1.5%; border: 1px solid #A7D7F9; text-align: center; padding: 2.5%; padding-top: 0px;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Build&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Get_Started|Learn how to get started]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Build|Build a ground station]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Rotators|Rotators]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Antennas|Antennas]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Receiver|Signal Reception]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;border-radius: 3px; width: 16%; height: 200px; background-color: #f6f6f6; float: left; display: block; margin: 1.5%; border: 1px solid #A7D7F9; text-align: center; padding: 2.5%; padding-top: 0px;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Operate&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Development Environment]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Production Environment]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Satnogs DB]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;border-radius: 3px; width: 16%; height: 200px; background-color: #f6f6f6; float: left; display: block; margin: 1.5%; border: 1px solid #A7D7F9; text-align: center; padding: 2.5%; padding-top: 0px;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Contribute&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Software contribution]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Provide documentation]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Satnogs DB]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Troubleshooting|Troubleshooting]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Get_In_Touch|Get in touch and ask for help]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;amp;nbsp;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=Operation&amp;diff=1875</id>
		<title>Operation</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=Operation&amp;diff=1875"/>
		<updated>2017-11-18T17:39:31Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Add permissions matrix&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Scheduling your first test observation ==&lt;br /&gt;
&lt;br /&gt;
'''Assumptions:'''&lt;br /&gt;
&lt;br /&gt;
* You've set up your [[Raspberry Pi 3|SatNOGS client successfully]]&lt;br /&gt;
* You've created an account on the [https://network-dev.satnogs.org/ Stage Environment], created a ground station, and it's showing up as &amp;quot;online&amp;quot;&lt;br /&gt;
&lt;br /&gt;
If you've run into any problems with those steps, check out the [[Troubleshooting]] page or ask for help in [https://community.libre.space/c/satnogs the community forum], [https://riot.im/app/#/room/#satnogs:matrix.org the Matrix room], or on IRC at #satnogs on Freenode.&lt;br /&gt;
&lt;br /&gt;
'''SatNOGS Network:'''&lt;br /&gt;
&lt;br /&gt;
* Navigate your ground station page in the Stage Environment (user name -&amp;gt; &amp;quot;My Profile&amp;quot; -&amp;gt; click on the name of your ground station).&lt;br /&gt;
* Select the &amp;quot;Upcoming passes&amp;quot; tab.&lt;br /&gt;
* Look for a pass with a &amp;quot;schedule&amp;quot; button that isn't greyed out, and click it.&lt;br /&gt;
* In the &amp;quot;New Observation&amp;quot; page that comes up, click the &amp;quot;Calculate&amp;quot; button, then click &amp;quot;Schedule&amp;quot;.&lt;br /&gt;
* You should now see a page for that observation; in the &amp;quot;Waterfall&amp;quot; tab, you should see &amp;quot;Waiting for waterfall&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
'''Ground Station'''&lt;br /&gt;
&lt;br /&gt;
Now SSH to your ground station computer and run these steps:&lt;br /&gt;
&lt;br /&gt;
* Follow the satnogs-client logs. Depending on your setup, this might be done with &amp;lt;code&amp;gt;journalctl -f -u satnogs-client.service&amp;lt;/code&amp;gt;, or &amp;lt;code&amp;gt;tail -F /var/log/supervisor/satnogs.log&amp;lt;/code&amp;gt;&lt;br /&gt;
* Before the observation is scheduled to start, you should see your client wake up once per minute to check for new jobs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Oct 02 00:16:02 raspberrypi satnogs-client[10124]: 2017-10-02 00:16:02,477 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:5011&lt;br /&gt;
Oct 02 00:16:02 raspberrypi satnogs-client[10124]: 2017-10-02 00:16:02,479 - satnogsclient - DEBUG - Sending message: [{&amp;quot;origin&amp;quot;: &amp;quot;network&amp;quot;, &amp;quot;transmitter&amp;quot;: &amp;quot;uXJ8NQNcH8b9osRc&lt;br /&gt;
Oct 02 00:16:02 raspberrypi satnogs-client[10124]: 2017-10-02 00:16:02,488 - apscheduler.executors.default - INFO - Job &amp;quot;get_jobs (trigger: interval[0:01:00], next run at: 2&lt;br /&gt;
Oct 02 00:16:59 raspberrypi satnogs-client[10124]: 2017-10-02 00:16:59,615 - apscheduler.executors.default - INFO - Running job &amp;quot;get_jobs (trigger: interval[0:01:00], next r&lt;br /&gt;
Oct 02 00:16:59 raspberrypi satnogs-client[10124]: 2017-10-02 00:16:59,661 - apscheduler.executors.default - INFO - Running job &amp;quot;post_data (trigger: interval[0:02:00], next &lt;br /&gt;
Oct 02 00:16:59 raspberrypi satnogs-client[10124]: 2017-10-02 00:16:59,668 - apscheduler.executors.default - INFO - Job &amp;quot;post_data (trigger: interval[0:02:00], next run at: &lt;br /&gt;
Oct 02 00:17:00 raspberrypi satnogs-client[10124]: 2017-10-02 00:17:00,906 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:5011&lt;br /&gt;
Oct 02 00:17:00 raspberrypi satnogs-client[10124]: 2017-10-02 00:17:00,908 - satnogsclient - DEBUG - Sending message: [{&amp;quot;origin&amp;quot;: &amp;quot;network&amp;quot;, &amp;quot;transmitter&amp;quot;: &amp;quot;uXJ8NQNcH8b9osRc&lt;br /&gt;
Oct 02 00:17:00 raspberrypi satnogs-client[10124]: 2017-10-02 00:17:00,912 - apscheduler.executors.default - INFO - Job &amp;quot;get_jobs (trigger: interval[0:01:00], next run at: 2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* At the scheduled time for the observation, you should see the client kick off the observation:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Oct 02 00:18:00 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:00,774 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:5011&lt;br /&gt;
Oct 02 00:18:00 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:00,776 - satnogsclient - DEBUG - Sending message: [{&amp;quot;origin&amp;quot;: &amp;quot;network&amp;quot;, &amp;quot;transmitter&amp;quot;: &amp;quot;uXJ8NQNcH8b9osRc&lt;br /&gt;
Oct 02 00:18:00 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:00,781 - apscheduler.executors.default - INFO - Job &amp;quot;get_jobs (trigger: interval[0:01:00], next run at: 2&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,022 - apscheduler.executors.default - INFO - Running job &amp;quot;spawn_observer (trigger: date[2017-10-02 00:&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,082 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:4533&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,109 - satnogsclient - DEBUG - Sending message: p&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,110 - satnogsclient - DEBUG - Received message: 0.000000&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 0.000000&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,111 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:4532&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,115 - satnogsclient - DEBUG - Sending message: P 188.276951189 -0.0155264223734&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,119 - satnogsclient - DEBUG - Received message: RPRT -1&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,143 - satnogsclient - DEBUG - Sending message: F 436038107&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,144 - satnogsclient - DEBUG - Received message: RPRT 0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* After the observation is over, you should see the client submit the data to the SatNOGS network&lt;br /&gt;
&lt;br /&gt;
In the SatNOGS Stage Environment, refresh the Observation page.  You should now see a waterfall plot for your data.&lt;br /&gt;
&lt;br /&gt;
If that all worked -- congratulations!  You've just successfully completed your first SatNOGS observation.&lt;br /&gt;
&lt;br /&gt;
If it didn't work, don't feel bad -- it can take a few attempts before you get it right.  Have a look at the [[Troubleshooting]] page for tips, and don't forget to contact the community if you need help.&lt;br /&gt;
&lt;br /&gt;
== Rating observations ==&lt;br /&gt;
&lt;br /&gt;
Once your observation results are posted back in the Network by your satnogs-client, you should go to Network to rate your observations. Any orange marked observations need vetting by users.&lt;br /&gt;
{{Message|The main purpose of validating observations is to know if the satellite/transmitter is alive, if it transmits in the listed frequency/ies, and if the TLEs we have are accurate.}}&lt;br /&gt;
{{Message|The functionality may change in the future, but for now even a faint sign on the waterfall is enough to make it valid.}}&lt;br /&gt;
&lt;br /&gt;
[[File:Screenshot from 2017-10-15 11-59-59.png|frame|Orange need your rating!]]&lt;br /&gt;
&lt;br /&gt;
Categories of observations:&lt;br /&gt;
&lt;br /&gt;
* '''Good'''&lt;br /&gt;
** You should mark observations as &amp;quot;Good&amp;quot; when it is clear from the waterfall and/or audio recording that a satellite is present.&lt;br /&gt;
* '''Bad'''&lt;br /&gt;
** You should mark observations as &amp;quot;Bad&amp;quot; when by examining the waterfall and/or audio it is obvious that there was no satellite detected in this observation.&lt;br /&gt;
&lt;br /&gt;
Below is a collection of waterfalls with possible results of observations:&lt;br /&gt;
&amp;lt;gallery heights=400px widths=200px&amp;gt;&lt;br /&gt;
File:Waterfall_20657_2017-10-15T10-07-51.png|'''Good''': Satellite is visible (bars-bursts of data in the middle). ''Note that the tangent-shaped lines are local noise''&lt;br /&gt;
File:Waterfall_20534_2017-10-15T07-21-24.png|'''Bad''': Typical empty waterfall with no visible signals.&lt;br /&gt;
File:Waterfall 20499 2017-10-15T07-17-32.png|'''Good''': Although drifting, satellite is clearly visible around the center.&lt;br /&gt;
File:Waterfall 20506 2017-10-15T06-47-36.png|'''Good''': Faint CW signal around center-left. ''Note you might have to expand image to notice it''&lt;br /&gt;
File:Waterfall_20571_2017-10-15T05-25-56.png|'''Good''': Clearly visible FM transmission. ''Note that the swinging lines are terrestrial noise''&lt;br /&gt;
File:Waterfall 20483 2017-10-15T05-12-49.png|'''Good''': Straight line in the center bottom is a satellite. ''Note transmission on left bottom is the same satellite on a different frequency''&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:Observation_with_discuss_button_highlighted.png|thumb|frame|Click the &amp;quot;Discuss&amp;quot; button to post in our web forum. (Note: this will only appear in the production SatNOGS network.)]]&lt;br /&gt;
&lt;br /&gt;
=== Discuss ===&lt;br /&gt;
If you're still unsure about an observation, click the &amp;quot;Discuss&amp;quot; button, near the top right of the observation's page; that will post a link to it on [https://community.libre.space/c/observations the Observations forum], where you can ask for feedback.  &lt;br /&gt;
{{Message|Discuss button is only shown in the production instance of the SatNOGS network.  If you have an observation in the dev instance you want help with, you can still post it manually to  [https://community.libre.space/c/observations the Observations forum], and we'll be happy to help.}}&lt;br /&gt;
&lt;br /&gt;
== Scheduling observations in standalone mode ==&lt;br /&gt;
&lt;br /&gt;
=== Scheduling a NOAA observation in standalone mode ===&lt;br /&gt;
&lt;br /&gt;
Instructions for scheduling a NOAA observation, including decoding of the APT images, can be found [http://ixion.csd.uoc.gr/vardakis/index.php/satnogs-noaa-apt-decoder-walkthrough/ here].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Network permissions matrix ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;col&amp;quot;| Group&lt;br /&gt;
! scope=&amp;quot;col&amp;quot;| Schedule observation&lt;br /&gt;
! scope=&amp;quot;col&amp;quot;| Delete observation&lt;br /&gt;
! scope=&amp;quot;col&amp;quot;| Vet observation&lt;br /&gt;
! scope=&amp;quot;col&amp;quot;| Discuss observation&lt;br /&gt;
|-&lt;br /&gt;
| Auth users&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| No&lt;br /&gt;
| Any&lt;br /&gt;
|-&lt;br /&gt;
| Station owners&lt;br /&gt;
| Any (on online stations) &amp;amp; Own stations (on test stations)&lt;br /&gt;
| Own (stations or observations)&lt;br /&gt;
| Own (stations or observations)&lt;br /&gt;
| Any&lt;br /&gt;
|-&lt;br /&gt;
| Moderators&lt;br /&gt;
| Any (on online stations)&amp;amp; Own stations (on test stations)&lt;br /&gt;
| Any&lt;br /&gt;
| Any&lt;br /&gt;
| Any&lt;br /&gt;
|-&lt;br /&gt;
| Admins&lt;br /&gt;
| Any&lt;br /&gt;
| Any&lt;br /&gt;
| Any&lt;br /&gt;
| Any&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=Fedora_Installation&amp;diff=1817</id>
		<title>Fedora Installation</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=Fedora_Installation&amp;diff=1817"/>
		<updated>2017-10-11T08:28:53Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Move fedora docs to wiki&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MARKDOWN}}&lt;br /&gt;
&lt;br /&gt;
## Installing SatNOGS on a Raspberry Pi 3&lt;br /&gt;
&lt;br /&gt;
This tutorial assumes the following:&lt;br /&gt;
&lt;br /&gt;
1. You have a Raspberry Pi 3 with external power (5V, 2A).&lt;br /&gt;
&lt;br /&gt;
2. USB keyboard, HDMI screen, HDMI cable, network cable (Wi-Fi isn't working on Fedora for now) and a Class 10 SDHC card at least 8GB.&lt;br /&gt;
&lt;br /&gt;
3. One of the following sdr devices: RTL-SDR or USRP B200.&lt;br /&gt;
&lt;br /&gt;
4. You have an account and a ground station registered on either `network.satnogs.org &amp;lt;https://network.satnogs.org&amp;gt;`_ or `network-dev.satnogs.org &amp;lt;https://network-dev.satnogs.org&amp;gt;`_. This is needed for getting your ground station ID number and your SatNOGS Network API key.&lt;br /&gt;
&lt;br /&gt;
### 1. Prepare Raspberry Pi&lt;br /&gt;
&lt;br /&gt;
**Step 1.1:** Download fedora minimal or server RPi image (current 26) from `ARM Fedora Project &amp;lt;https://arm.fedoraproject.org/&amp;gt;`_ (server edition provides a nice web interface, admin console, with several stats and SSH access).&lt;br /&gt;
&lt;br /&gt;
**Step 1.2:** Connect SD card to your computer/laptop and prepare it as described at `Fedora Wiki &amp;lt;https://fedoraproject.org/wiki/Raspberry_Pi#Preparing_the_SD_card&amp;gt;`_ (don't forget to `resize the root partition &amp;lt;https://fedoraproject.org/wiki/Raspberry_Pi#Resizing_the_root_partition&amp;gt;`_).&lt;br /&gt;
&lt;br /&gt;
**Step 1.3:** Attach sdcard to your RPi, plug in the HDMI cable, keyboard and ethernet and turn on the HDMI screen. Plug RPi to the power source.&lt;br /&gt;
&lt;br /&gt;
**Step 1.4:** Fedora installation starts, follow the steps that show up in the screen. You'll have to setup:&lt;br /&gt;
  * root password&lt;br /&gt;
  * network connection&lt;br /&gt;
  * timezone and ntp server, add at least one, `pool.ntp.org` is suggested&lt;br /&gt;
  * a new user, e.g. `satnogs`. Don't forget to set administrator flag and add user to `dialout` group (needed for having access to sdr device).&lt;br /&gt;
&lt;br /&gt;
**Step 1.5:** From now on you are able to access you RPi directly or through SSH. You can also use admin console if you have selected the fedora server version.&lt;br /&gt;
&lt;br /&gt;
**Step 1.6:** Update fedora package to the latest version by running::&lt;br /&gt;
&lt;br /&gt;
    sudo dnf -y update&lt;br /&gt;
&lt;br /&gt;
**Step 1.7:** Install dependencies for gr-satnogs and satnogs-client::&lt;br /&gt;
&lt;br /&gt;
    sudo dnf install -y util-linux-user git gcc redhat-rpm-config python-devel redis vorbis-tools hamlib gnuradio gnuradio-devel cmake swig fftw3-devel gcc-c++ cppunit cppunit-devel doxygen gr-osmosdr libnova libnova-devel gnuplot libvorbis-devel libffi-devel openssl-devel libpng-devel&lt;br /&gt;
&lt;br /&gt;
**Step 1.8:** In order to expand the lifetime of the SD Card, edit /etc/fstab file with your favourite editor:&lt;br /&gt;
  * Comment out the line of the swap partition&lt;br /&gt;
  * Only if you used the &amp;quot;minimal&amp;quot; Fedora installation (not the &amp;quot;server&amp;quot; build), change options of root partition line (/ ext4) from `defaults,noatime` to `defaults,noatime,commit=1800`. This change means that changes on root partition will be written on SD Card every 30min&lt;br /&gt;
  * Move /var/log and /var/tmp directories to memory by adding the following two lines::&lt;br /&gt;
&lt;br /&gt;
      tmpfs /var/tmp tmpfs defaults,noatime,nosuid,size=120m 0 0&lt;br /&gt;
      tmpfs /var/log tmpfs defaults,noatime,nosuid,mode=0755,size=80m 0 0&lt;br /&gt;
&lt;br /&gt;
**Step 1.9:** Automate creating of redis directory in /var/log path after boot by running::&lt;br /&gt;
&lt;br /&gt;
    sudo sh -c 'echo &amp;quot;#Type Path                Mode UID   GID   Age Argument&amp;quot; &amp;gt; /etc/tmpfiles.d/logdirs.conf'&lt;br /&gt;
    sudo sh -c 'echo &amp;quot;d     /var/log/redis      0750 redis redis 1d  -&amp;quot; &amp;gt;&amp;gt; /etc/tmpfiles.d/logdirs.conf'&lt;br /&gt;
&lt;br /&gt;
**Step 1.10:** Enable and start Redis service in order to run automatically on startup::&lt;br /&gt;
&lt;br /&gt;
    sudo systemctl enable redis.service&lt;br /&gt;
    sudo systemctl start redis.service&lt;br /&gt;
&lt;br /&gt;
**Step 1.11:** Configure automatic cleanup of old data (while this is an optional step, if old files are not cleaned out regularly you run the risk of filling your disk over time)&lt;br /&gt;
  * As-is this will clean out files older than 1 week. Adjust mtime to your liking&lt;br /&gt;
  * Create /etc/cron.daily/satnogs with your favorite editor and add the following::&lt;br /&gt;
&lt;br /&gt;
      #!/bin/sh&lt;br /&gt;
      find /tmp/.satnogs/data -type f -mtime +7 -delete&lt;br /&gt;
&lt;br /&gt;
  * Then run::&lt;br /&gt;
&lt;br /&gt;
      sudo chmod +x /etc/cron.daily/satnogs&lt;br /&gt;
&lt;br /&gt;
**Step 1.12:** If you used Fedora Server, configure firewall for SatNOGS web user interface&lt;br /&gt;
  * Create /usr/lib/firewalld/services/satnogs.xml and add the following::&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
        &amp;lt;service&amp;gt;&lt;br /&gt;
        &amp;lt;short&amp;gt;SatNOGS (HTTP)&amp;lt;/short&amp;gt;&lt;br /&gt;
        &amp;lt;description&amp;gt;HTTP is the protocol used to serve Web pages. If you plan to make your Web server publicly available, enable this option. This option is not required for viewing pages locally or developing Web pages.&amp;lt;/description&amp;gt;&lt;br /&gt;
        &amp;lt;port protocol=&amp;quot;tcp&amp;quot; port=&amp;quot;5000&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;/service&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  * If you used the server image run::&lt;br /&gt;
&lt;br /&gt;
      sudo firewall-cmd --zone=FedoraServer --add-service=satnogs --permanent&lt;br /&gt;
      sudo firewall-cmd --zone=FedoraServer --add-service=satnogs&lt;br /&gt;
&lt;br /&gt;
  * Or for the minimal image::&lt;br /&gt;
&lt;br /&gt;
      sudo firewall-cmd --zone=public --add-service=satnogs --permanent&lt;br /&gt;
      sudo firewall-cmd --zone=public --add-service=satnogs&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
### 2. Install gr-satnogs&lt;br /&gt;
&lt;br /&gt;
SatNOGS Client uses GNU Radio scripts in order to get observation data from satelites, gr-satnogs provide this functionality.&lt;br /&gt;
&lt;br /&gt;
**Step 2.1:**: Install gr-satnogs by running the next commands::&lt;br /&gt;
&lt;br /&gt;
    git clone https://github.com/satnogs/gr-satnogs.git&lt;br /&gt;
    cd gr-satnogs&lt;br /&gt;
    mkdir build&lt;br /&gt;
    cd build&lt;br /&gt;
    cmake -DLIB_SUFFIX=64 -DCMAKE_INSTALL_PREFIX=/usr ..&lt;br /&gt;
    make -j4&lt;br /&gt;
    sudo make install&lt;br /&gt;
    sudo sh -c 'echo /usr/lib64 &amp;gt; /etc/ld.so.conf.d/lib64.conf'&lt;br /&gt;
    sudo ldconfig&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
### 3. Install satnogs-client&lt;br /&gt;
&lt;br /&gt;
Building from source is outside of the scope of this document, we will use the packaged install for now.&lt;br /&gt;
&lt;br /&gt;
**Step 3.1:** Run the following command to install the packaged version of SatNOGS Client::&lt;br /&gt;
&lt;br /&gt;
   sudo pip install satnogsclient&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
### 4. Configure satnogs-client&lt;br /&gt;
&lt;br /&gt;
SatNOGS Client needs some configuration before running:&lt;br /&gt;
&lt;br /&gt;
**Step 4.1:** Create a .env file in your home directory (`~/.env`) and add station's details as they are defined at SatNOGS Network::&lt;br /&gt;
&lt;br /&gt;
    export SATNOGS_API_TOKEN=&amp;quot;1234567890qwertyuiopasdfghjklzxcvbnm1234&amp;quot;&lt;br /&gt;
    export SATNOGS_STATION_ID=&amp;quot;65&amp;quot;&lt;br /&gt;
    export SATNOGS_STATION_LAT=&amp;quot;40.662&amp;quot;&lt;br /&gt;
    export SATNOGS_STATION_LON=&amp;quot;23.337&amp;quot;&lt;br /&gt;
    export SATNOGS_STATION_ELEV=&amp;quot;150&amp;quot;&lt;br /&gt;
    export SATNOGS_NETWORK_API_URL=&amp;quot;https://network-dev.satnogs.org/api/&amp;quot;&lt;br /&gt;
&lt;br /&gt;
.. _optional_settings:&lt;br /&gt;
&lt;br /&gt;
**Step 4.2:** There are more option you can export in the created .env file. You will probably need to change the default values of the settings bellow:&lt;br /&gt;
&lt;br /&gt;
SATNOGS_RX_DEVICE&lt;br /&gt;
  * Defines the sdr device. It could be 'usrpb200' or 'rtlsdr'.&lt;br /&gt;
  * Default Type: string&lt;br /&gt;
  * Default Value: 'rtlsdr'&lt;br /&gt;
&lt;br /&gt;
SATNOGS_PPM_ERROR&lt;br /&gt;
  * Defines PPM error of sdr, check :doc:`finding-ppm` for more details on PPM.&lt;br /&gt;
  * Default Type: integer&lt;br /&gt;
  * Default Value: 0&lt;br /&gt;
&lt;br /&gt;
**Step 4.3:** Other optional settings:&lt;br /&gt;
&lt;br /&gt;
SATNOGS_APP_PATH&lt;br /&gt;
  * Defines the path where the sqlite database will be created.&lt;br /&gt;
  * Default Type: string&lt;br /&gt;
  * Default Value: '/tmp/.satnogs'&lt;br /&gt;
&lt;br /&gt;
SATNOGS_OUTPUT_PATH&lt;br /&gt;
  * Defines the path where the observation data will be saved.&lt;br /&gt;
  * Default Type: string&lt;br /&gt;
  * Default Value: '/tmp/.satnogs/data'&lt;br /&gt;
&lt;br /&gt;
SATNOGS_COMPLETE_OUTPUT_PATH&lt;br /&gt;
  * Defines the path where data will be moved after succesful upload on network.&lt;br /&gt;
  * Default Type: string&lt;br /&gt;
  * Default Value: ''&lt;br /&gt;
&lt;br /&gt;
SATNOGS_INCOMPLETE_OUTPUT_PATH&lt;br /&gt;
  * Defines the path where data will be moved after unsuccesful upload on network.&lt;br /&gt;
  * Default Type: string&lt;br /&gt;
  * Default Value: '/tmp/.satnogs/data/incomplete'&lt;br /&gt;
&lt;br /&gt;
SATNOGS_ROT_IP&lt;br /&gt;
  * Defines IP address where rotctld process listens.&lt;br /&gt;
  * Default Type: string&lt;br /&gt;
  * Default Value: '127.0.0.1'&lt;br /&gt;
&lt;br /&gt;
SATNOGS_ROT_PORT&lt;br /&gt;
  * Defines port where rotctld process listens.&lt;br /&gt;
  * Default Type: integer&lt;br /&gt;
  * Default Value: 4533&lt;br /&gt;
&lt;br /&gt;
SATNOGS_RIG_IP&lt;br /&gt;
  * Defines IP address where rigctld process listens.&lt;br /&gt;
  * Default Type: string&lt;br /&gt;
  * Default Value: '127.0.0.1'&lt;br /&gt;
&lt;br /&gt;
SATNOGS_RIG_PORT&lt;br /&gt;
  * Defines port where rigctld process listens.&lt;br /&gt;
  * Default Type: integer&lt;br /&gt;
  * Default Value: 4532&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
### 5. Prepare SDR Device&lt;br /&gt;
&lt;br /&gt;
In order to have access and use SDR device you need to follow the next steps for you device:&lt;br /&gt;
&lt;br /&gt;
^^^^^^^^^^^^&lt;br /&gt;
1. USRP B200&lt;br /&gt;
^^^^^^^^^^^^&lt;br /&gt;
**Step 5.1.1:** Install uhd package::&lt;br /&gt;
&lt;br /&gt;
    sudo dnf install -y uhd&lt;br /&gt;
&lt;br /&gt;
**Step 5.1.2:** Download uhd images::&lt;br /&gt;
&lt;br /&gt;
    sudo /usr/bin/uhd_images_downloader&lt;br /&gt;
&lt;br /&gt;
**Step 5.1.3:** As the access will be only by ssh and not by direct login we are not be able to access SDR device through `Access Control List(ACL) &amp;lt;https://en.wikipedia.org/wiki/Access_control_list&amp;gt;`_, so we need to setup the appropriate udev rules by following the next steps:&lt;br /&gt;
&lt;br /&gt;
  * Copy udev rules from `/usr/lib/udev/rules.d/10-usrp-uhd.rules` to `/etc/udev/rules.d/10-usrp-uhd.rules`::&lt;br /&gt;
&lt;br /&gt;
      sudo cp /usr/lib/udev/rules.d/10-usrp-uhd.rules /etc/udev/rules.d/10-usrp-uhd.rules&lt;br /&gt;
&lt;br /&gt;
  * Replace ACL reference::&lt;br /&gt;
&lt;br /&gt;
      sudo sed -i 's/0&amp;quot;, ENV{ID_SOFTWARE_RADIO}=&amp;quot;1&amp;quot;/6&amp;quot;/g' /etc/udev/rules.d/10-usrp-uhd.rules&lt;br /&gt;
&lt;br /&gt;
  * Reload udev rules::&lt;br /&gt;
&lt;br /&gt;
      sudo udevadm control --reload-rules&lt;br /&gt;
&lt;br /&gt;
  * Confirm access on device by running (without sudo, just as single user)::&lt;br /&gt;
&lt;br /&gt;
      uhd_find_devices&lt;br /&gt;
&lt;br /&gt;
  * In case you don't have access, make sure that the device is connected and that the created user is member of the `dialout` group by running::&lt;br /&gt;
&lt;br /&gt;
      groups&lt;br /&gt;
&lt;br /&gt;
  * If user isn't member of `dialout` group run (replace satnogs with the username of your user)::&lt;br /&gt;
&lt;br /&gt;
      sudo usermod -aG dialout satnogs&lt;br /&gt;
&lt;br /&gt;
^^^^^^^^^^^^&lt;br /&gt;
2. RTL-SDR&lt;br /&gt;
^^^^^^^^^^^^&lt;br /&gt;
**Step 5.2.1:** As the access will be only by ssh and not by direct login we are not be able to access SDR device through `Access Control List(ACL) &amp;lt;https://en.wikipedia.org/wiki/Access_control_list&amp;gt;`_, so we need to setup the appropriate udev rules by following the next steps:&lt;br /&gt;
&lt;br /&gt;
  * Copy udev rules from `/usr/lib/udev/rules.d/10-rtl-sdr.rules` to `/etc/udev/rules.d/10-rtl-sdr.rules`::&lt;br /&gt;
&lt;br /&gt;
      sudo cp /usr/lib/udev/rules.d/10-rtl-sdr.rules /etc/udev/rules.d/10-rtl-sdr.rules&lt;br /&gt;
&lt;br /&gt;
  * Replace ACL reference and change group ownership::&lt;br /&gt;
&lt;br /&gt;
      sudo sed -i 's/0&amp;quot;, ENV{ID_SOFTWARE_RADIO}=&amp;quot;1&amp;quot;/6&amp;quot;/g' /etc/udev/rules.d/10-rtl-sdr.rules&lt;br /&gt;
      sudo sed -i 's/rtlsdr/dialout/g' /etc/udev/rules.d/10-rtl-sdr.rules&lt;br /&gt;
&lt;br /&gt;
  * Reload udev rules::&lt;br /&gt;
&lt;br /&gt;
      sudo udevadm control --reload-rules&lt;br /&gt;
&lt;br /&gt;
  * If your rtlsdr device was already plugged in, you will need to unplug it and plug it back in. Otherwise, it is safe to plug it in now.&lt;br /&gt;
&lt;br /&gt;
  * In case you don't have access, make sure that the device is connected and that the created user is member of the `dialout` group by running::&lt;br /&gt;
&lt;br /&gt;
      groups&lt;br /&gt;
&lt;br /&gt;
  * If user isn't member of `dialout` group run (replace satnogs with the username of your user)::&lt;br /&gt;
&lt;br /&gt;
      sudo usermod -aG dialout satnogs&lt;br /&gt;
&lt;br /&gt;
  * If you had to take that step, log out and log back in&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
### 6. Run satnogs-client&lt;br /&gt;
&lt;br /&gt;
^^^^^^^^^^^&lt;br /&gt;
1. Manually&lt;br /&gt;
^^^^^^^^^^^&lt;br /&gt;
In order to manually run satnogs-client you need to follow the next steps:&lt;br /&gt;
&lt;br /&gt;
**Step 6.1.1:** Export all the environment variables::&lt;br /&gt;
&lt;br /&gt;
    source .env&lt;br /&gt;
&lt;br /&gt;
**Step 6.1.2:** Start rotctl daemon(note: given example parameters bellow, you may need to change, add or omit some of them. For a Yaesu G-5500 use -m 601 and -s 9600)::&lt;br /&gt;
&lt;br /&gt;
    rotctld -m 202 -r /dev/ttyACM0 -s 19200 &amp;amp;&lt;br /&gt;
&lt;br /&gt;
**Step 6.1.3:** Run the SatNOGS Client::&lt;br /&gt;
&lt;br /&gt;
    satnogs-client&lt;br /&gt;
&lt;br /&gt;
**At this point your client should be fully functional! It will check in with the network URL at a 1 minute interval. You should check your ground station page on the website, the station ID will be in a red box until the station checks in, at which time it will turn green. There are many ways to automate the running and control of satnogs, we will give you 2 options below, supervisord and systemd.**&lt;br /&gt;
&lt;br /&gt;
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^&lt;br /&gt;
2. Automaticaly with Supervisord&lt;br /&gt;
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^&lt;br /&gt;
&lt;br /&gt;
`Supervisord &amp;lt;http://supervisord.org/introduction.html&amp;gt;`_ is one of the ways to automatically run SatNOGS Client. This is very useful especialy after a power failure or reboot of raspberry pi.&lt;br /&gt;
&lt;br /&gt;
In order to setup supervisord we need to follow the next steps:&lt;br /&gt;
&lt;br /&gt;
**Step 6.2.1:** Install supervisord::&lt;br /&gt;
&lt;br /&gt;
    sudo dnf install -y supervisor&lt;br /&gt;
&lt;br /&gt;
**Step 6.2.2:** Automate creating of supervisor directory in /var/log path after boot by running::&lt;br /&gt;
&lt;br /&gt;
    sudo sh -c 'echo &amp;quot;d     /var/log/supervisor 0750 root  root  3d  -&amp;quot; &amp;gt;&amp;gt; /etc/tmpfiles.d/logdirs.conf'&lt;br /&gt;
&lt;br /&gt;
**Step 6.2.3:** Configure supervisord for rotctld&lt;br /&gt;
&lt;br /&gt;
Open with sudo and your favorite editor and add this into /etc/supervisord.d/rotctld.ini::&lt;br /&gt;
&lt;br /&gt;
   [program:rotctld]&lt;br /&gt;
   command=/usr/bin/rotctld &amp;lt;rotctld PARAMETERS&amp;gt;&lt;br /&gt;
   autostart=true&lt;br /&gt;
   autorestart=true&lt;br /&gt;
   user=&amp;lt;USERNAME&amp;gt;&lt;br /&gt;
   priority=1&lt;br /&gt;
   stdout_logfile=/var/log/supervisor/rotctld.log&lt;br /&gt;
   stderr_logfile=/var/log/supervisor/rotctld-error.log&lt;br /&gt;
&lt;br /&gt;
Replace &amp;lt;USERNAME&amp;gt; with the username of the user you have created and &amp;lt;rotctld PARAMETERS&amp;gt; with the parameters needed to run rotctl in your case.&lt;br /&gt;
&lt;br /&gt;
**Step 6.2.4:** Configure supervisord for satnogs-client&lt;br /&gt;
&lt;br /&gt;
Add this into /etc/supervisord.d/satnogs.ini::&lt;br /&gt;
&lt;br /&gt;
   [program:satnogs]&lt;br /&gt;
   command=/usr/bin/satnogs-client&lt;br /&gt;
   autostart=true&lt;br /&gt;
   autorestart=true&lt;br /&gt;
   user=&amp;lt;USERNAME&amp;gt;&lt;br /&gt;
   environment=SATNOGS_NETWORK_API_URL=&amp;quot;&amp;lt;URL&amp;gt;&amp;quot;,SATNOGS_API_TOKEN=&amp;quot;&amp;lt;TOKEN&amp;gt;&amp;quot;,SATNOGS_STATION_ID=&amp;quot;&amp;lt;ID&amp;gt;&amp;quot;,SATNOGS_STATION_LAT=&amp;quot;&amp;lt;LATITUDE&amp;gt;&amp;quot;,SATNOGS_STATION_LON=&amp;quot;&amp;lt;LONGITUDE&amp;gt;&amp;quot;,SATNOGS_STATION_ELEV=&amp;quot;&amp;lt;ELEVATION&amp;gt;&amp;quot;&lt;br /&gt;
   stdout_logfile=/var/log/supervisor/satnogs.log&lt;br /&gt;
   stderr_logfile=/var/log/supervisor/satnogs-error.log&lt;br /&gt;
&lt;br /&gt;
Replace &amp;lt;USERNAME&amp;gt; with the username of the user you have created.&lt;br /&gt;
Replace &amp;lt;...&amp;gt; instances in environment with the values you used in .env file,&lt;br /&gt;
you can also add in this list any other of the :ref:`optional settings &amp;lt;optional_settings&amp;gt;`.&lt;br /&gt;
&lt;br /&gt;
**Step 6.2.5:** Reloading supervisord to get the new configuration::&lt;br /&gt;
&lt;br /&gt;
  sudo systemctl enable supervisord.service&lt;br /&gt;
  sudo systemctl start supervisord.service&lt;br /&gt;
&lt;br /&gt;
With that rotctld and satnogs-client should have started, you can follow the logs in /var/log/supervisor/.&lt;br /&gt;
&lt;br /&gt;
*NOTE:* In case that you want to change something in .ini files like satnogs environment variables (url from the dev one to production one), then you will need to run::&lt;br /&gt;
&lt;br /&gt;
 sudo supervisorctl reload&lt;br /&gt;
&lt;br /&gt;
^^^^^^^^^^^^^^^^^^^^^^^^^^^^&lt;br /&gt;
3. Automaticaly with Systemd&lt;br /&gt;
^^^^^^^^^^^^^^^^^^^^^^^^^^^^&lt;br /&gt;
&lt;br /&gt;
`Systemd &amp;lt;https://www.freedesktop.org/wiki/Software/systemd/&amp;gt;`_ is one of the ways to automatically run SatNOGS Client. This is very useful especialy after a power failure or reboot of raspberry pi.&lt;br /&gt;
&lt;br /&gt;
In order to setup systemd we need to follow the next steps:&lt;br /&gt;
&lt;br /&gt;
**Step 6.3.1:** Create the script which will initialize and run rotctld and satnogs-client in your home directory (`~/start-satnogs-client.sh`) with the following content::&lt;br /&gt;
&lt;br /&gt;
    rotctld &amp;lt;rotctld PARAMETERS&amp;gt; &amp;amp;&lt;br /&gt;
    date &amp;gt;&amp;gt; satnogs-auto.log&lt;br /&gt;
    source .env&lt;br /&gt;
    satnogs-client&lt;br /&gt;
&lt;br /&gt;
Replace &amp;lt;rotctld PARAMETERS&amp;gt; with the parameters needed to run rotctl in your case.&lt;br /&gt;
&lt;br /&gt;
**Step 6.3.2:** Create as root the file /lib/systemd/system/satnogs-client.service and add the following content::&lt;br /&gt;
&lt;br /&gt;
    [Unit]&lt;br /&gt;
    Description=Satnogs Client&lt;br /&gt;
    Requires=redis.service&lt;br /&gt;
    After=redis.service&lt;br /&gt;
&lt;br /&gt;
    [Service]&lt;br /&gt;
    User=&amp;lt;USERNAME&amp;gt;&lt;br /&gt;
    WorkingDirectory=/home/&amp;lt;USERNAME&amp;gt;/&lt;br /&gt;
    ExecStart=/bin/bash start-satnogs-client.sh&lt;br /&gt;
    KillMode=control-group&lt;br /&gt;
&lt;br /&gt;
    [Install]&lt;br /&gt;
    WantedBy=multi-user.target&lt;br /&gt;
&lt;br /&gt;
Replace &amp;lt;USERNAME&amp;gt; with the username of the user you have created.&lt;br /&gt;
&lt;br /&gt;
**Step 6.3.3:** Enable and start satnogs-client.service::&lt;br /&gt;
&lt;br /&gt;
    sudo systemctl enable satnogs-client.service&lt;br /&gt;
    sudo systemctl start satnogs-client.service&lt;br /&gt;
&lt;br /&gt;
With that rotctld and satnogs-client should have started, you can follow the logs with journactl::&lt;br /&gt;
&lt;br /&gt;
    journalctl -u satnogs-client.service&lt;br /&gt;
&lt;br /&gt;
Use `-f` flag if you want to see the latest updates on logs::&lt;br /&gt;
&lt;br /&gt;
    journalctl -f -u satnogs-client.service&lt;br /&gt;
&lt;br /&gt;
*NOTE:* In case that you want to change something in start-satnogs-client.sh, make the change and then run::&lt;br /&gt;
&lt;br /&gt;
    sudo systemctl stop satnogs-client.service&lt;br /&gt;
    sudo systemctl start satnogs-client.service&lt;br /&gt;
&lt;br /&gt;
*NOTE:* In case that you want to change something in satnogs-client.service, make the change and then run::&lt;br /&gt;
&lt;br /&gt;
    sudo systemctl daemon-reload&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=Raspberry_Pi&amp;diff=1797</id>
		<title>Raspberry Pi</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=Raspberry_Pi&amp;diff=1797"/>
		<updated>2017-10-02T15:44:02Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Remove Fedora section&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Message|This page assumes you have an account and a ground station registered on either network.satnogs.org or network-dev.satnogs.org. Make note of your station ID and API Key.}}&lt;br /&gt;
&lt;br /&gt;
= Intro =&lt;br /&gt;
&lt;br /&gt;
The Raspberry Pi 3 is the reference platform for SatNOGS. You can try using various distributions for this (eg. Arch, Fedora), but the one we suggest is our custom image based on latest Raspbian.&lt;br /&gt;
&lt;br /&gt;
= Raspbian =&lt;br /&gt;
&lt;br /&gt;
== Download ==&lt;br /&gt;
&lt;br /&gt;
You can download the latest Raspbian SatNOGS image following the links from the [https://gitlab.com/librespacefoundation/satnogs/satnogs-pi-gen/tags latest tag on GitLab].&lt;br /&gt;
&lt;br /&gt;
=== Artifacts list ===&lt;br /&gt;
&lt;br /&gt;
The current artifacts list consists of:&lt;br /&gt;
* A Zipped image file&lt;br /&gt;
* An Image info file&lt;br /&gt;
* A SHA256 checksums file&lt;br /&gt;
&lt;br /&gt;
== Data integrity verification ==&lt;br /&gt;
&lt;br /&gt;
You should verify the data integrity of the artifacts by checking the SHA256 checksums. On Linux, run &amp;lt;code&amp;gt;sha256sum -c sha256sums&amp;lt;/code&amp;gt; in the directory where the artifacts are downloaded&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sha256sum -c sha256sums &lt;br /&gt;
2017-09-29-Raspbian-SatNOGS-master-lite.info: OK&lt;br /&gt;
image_2017-09-29-Raspbian-SatNOGS-master-lite.zip: OK&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Flashing ==&lt;br /&gt;
&lt;br /&gt;
[https://www.raspberrypi.org/documentation/installation/installing-images/README.md Follow the usual Raspbian flashing instructions], and boot your Raspberry Pi.&lt;br /&gt;
&lt;br /&gt;
== Networking ==&lt;br /&gt;
&lt;br /&gt;
If you are using wired Ethernet you should get connectivity right away. If you are using wireless then see [https://www.raspberrypi.org/documentation/configuration/wireless/wireless-cli.md this doc for network configuration instructions].&lt;br /&gt;
&lt;br /&gt;
== Setup ==&lt;br /&gt;
&lt;br /&gt;
SSH to the Raspberry Pi with user &amp;quot;pi&amp;quot; and password &amp;quot;raspberry&amp;quot; (no quotes).  Run &amp;quot;sudo satnogs-setup&amp;quot; to set basic configuration. Select &amp;quot;quit&amp;quot; when you are finished, and  the Raspberry Pi will reconfigure itself; this may take some time.&lt;br /&gt;
&lt;br /&gt;
* Note: you can always reconfigure the software by running &amp;quot;sudo satnogs-setup -n&amp;quot; again.&lt;br /&gt;
&lt;br /&gt;
=== Basic setup ===&lt;br /&gt;
&lt;br /&gt;
* '''SATNOGS_API_TOKEN''':  The API token assigned to your ground station on the SatNOGS Network website.&lt;br /&gt;
&lt;br /&gt;
* '''SATNOGS_NETWORK_API_URL''':  The API for the SatNOGS network site.  If you're working on the stage environment, this is https://network-dev.satnogs.org/api/; if you're working on the prod environment, this is https://network.satnogs.org/api/.&lt;br /&gt;
&lt;br /&gt;
* '''SATNOGS_RX_DEVICE''':  If you are using an RTL-SDR, this is &amp;lt;code&amp;gt;rtlsdr&amp;lt;/code&amp;gt;.  Other devices supported by gr-satnogs include &amp;lt;code&amp;gt;usrpb200&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;usrp2&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;airspy&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;hackrf&amp;lt;/code&amp;gt;; a complete list can be found [https://gitlab.com/librespacefoundation/satnogs/gr-satnogs/blob/master/apps/flowgraphs/satellites/README.md here].&lt;br /&gt;
&lt;br /&gt;
* '''SATNOTS_STATION_ELEV''':  The elevation of your ground station in metres.&lt;br /&gt;
&lt;br /&gt;
* '''SATNOTS_STATION_ID''':  The ID assigned to your station in the SatNOGS network site (either stage or prod).&lt;br /&gt;
&lt;br /&gt;
* '''SATNOTS_STATION_LAT''': The latitude of your station.  North is positive, south is negative.&lt;br /&gt;
&lt;br /&gt;
* '''SATNOTS_STATION_LONG''': The longitude of your station.  East is positive, west is negative.&lt;br /&gt;
&lt;br /&gt;
* '''HAMLIB_UTILS_ROT_ENABLED''':  Whether or not to enable the Hamlibs rotator daemon.  Rotctld is a software daemon that provides a network server to control a rotator on a serial port.  If you don't have a rotator (like the [https://wiki.satnogs.org/No_rotator No rotator setup]), enter &amp;lt;code&amp;gt;False&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
* '''HAMLIB_UTILS_ROT_OPTS''':  Options for rotcld.&lt;br /&gt;
&lt;br /&gt;
== Updating ==&lt;br /&gt;
&lt;br /&gt;
To update SatNOGS software, re-run &amp;lt;code&amp;gt;sudo satnogs-setup&amp;lt;/code&amp;gt;. This will pull the latest Ansible playbook and update if necessary.&lt;br /&gt;
&lt;br /&gt;
Raspbian packages can be updated using the normal APT updating methods (e.g. &amp;lt;code&amp;gt;apt-get upgrade&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;aptitude&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
WARNING: An update can potentially interrupt a running observation!&lt;br /&gt;
&lt;br /&gt;
== Testing ==&lt;br /&gt;
&lt;br /&gt;
To see if satnogs-client has started successfully, check the logs with journalctl:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
journalctl -u satnogs-client.service&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You should see entries running approximately once per minute that look like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Oct 01 23:02:13 raspberrypi satnogs-client[6695]:  * Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)&lt;br /&gt;
Oct 01 23:02:14 raspberrypi satnogs-client[6695]: 2017-10-01 23:02:14,466 - satnogsclient - INFO - [LD] Downlink thread waiting for first downlink packet&lt;br /&gt;
Oct 01 23:03:14 raspberrypi satnogs-client[6695]: 2017-10-01 23:03:14,450 - apscheduler.executors.default - INFO - Running job &amp;quot;get_jobs (trigger: interval[0:01:00], next run at: 2017-10-01 23:03:14 UTC)&amp;quot; (scheduled at 2017-10-01 23:03:14.423393+00:00)&lt;br /&gt;
Oct 01 23:03:47 raspberrypi satnogs-client[6695]: 2017-10-01 23:03:47,324 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:5011&lt;br /&gt;
Oct 01 23:03:47 raspberrypi satnogs-client[6695]: 2017-10-01 23:03:47,325 - satnogsclient - DEBUG - Sending message: []&lt;br /&gt;
Oct 01 23:03:47 raspberrypi satnogs-client[6695]: 2017-10-01 23:03:47,327 - apscheduler.executors.default - INFO - Job &amp;quot;get_jobs (trigger: interval[0:01:00], next run at: 2017-10-01 23:04:14 UTC)&amp;quot; executed successfully&lt;br /&gt;
Oct 01 23:04:14 raspberrypi satnogs-client[6695]: 2017-10-01 23:04:14,453 - apscheduler.executors.default - INFO - Running job &amp;quot;get_jobs (trigger: interval[0:01:00], next run at: 2017-10-01 23:04:14 UTC)&amp;quot; (scheduled at 2017-10-01 23:04:14.423393+00:00)&lt;br /&gt;
Oct 01 23:04:14 raspberrypi satnogs-client[6695]: 2017-10-01 23:04:14,484 - apscheduler.executors.default - INFO - Running job &amp;quot;post_data (trigger: interval[0:02:00], next run at: 2017-10-01 23:04:14 UTC)&amp;quot; (scheduled at 2017-10-01 23:04:14.436367+00:00)&lt;br /&gt;
Oct 01 23:04:14 raspberrypi satnogs-client[6695]: 2017-10-01 23:04:14,489 - apscheduler.executors.default - INFO - Job &amp;quot;post_data (trigger: interval[0:02:00], next run at: 2017-10-01 23:04:14 UTC)&amp;quot; executed successfully&lt;br /&gt;
Oct 01 23:04:15 raspberrypi satnogs-client[6695]: 2017-10-01 23:04:15,627 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:5011&lt;br /&gt;
Oct 01 23:04:15 raspberrypi satnogs-client[6695]: 2017-10-01 23:04:15,628 - satnogsclient - DEBUG - Sending message: []&lt;br /&gt;
Oct 01 23:04:15 raspberrypi satnogs-client[6695]: 2017-10-01 23:04:15,629 - apscheduler.executors.default - INFO - Job &amp;quot;get_jobs (trigger: interval[0:01:00], next run at: 2017-10-01 23:05:14 UTC)&amp;quot; executed successfully&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you see that, great -- you're ready to [[Operation|schedule your first observation]]! If not, check out the [[Troubleshooting]] page.&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=Raspberry_Pi&amp;diff=1796</id>
		<title>Raspberry Pi</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=Raspberry_Pi&amp;diff=1796"/>
		<updated>2017-10-02T15:39:45Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: /* Download */ point to tags page for images&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Intro =&lt;br /&gt;
&lt;br /&gt;
The Raspberry Pi 3 is the reference platform for SatNOGS.  As of September 2017, there are two methods of installing the SatNOGS client on a Raspberry Pi:&lt;br /&gt;
&lt;br /&gt;
* Using Fedora for ARM, and following the instructions at [http://satnogs.readthedocs.io/en/stable/satnogs-client/doc/raspi-install.html satnogs.readthedocs.io]&lt;br /&gt;
* Installing the custom-built SatNOGS Raspbian image&lt;br /&gt;
&lt;br /&gt;
{{Message|This page assumes you have an account and a ground station registered on either network.satnogs.org or network-dev.satnogs.org. Make note of your station ID and API Key.}}&lt;br /&gt;
&lt;br /&gt;
= Fedora =&lt;br /&gt;
&lt;br /&gt;
Start by downloading the &amp;quot;Server&amp;quot; or &amp;quot;Minimal&amp;quot; image from the [https://arm.fedoraproject.org/ the Fedora ARM project page].  After that, follow the instructions at [http://satnogs.readthedocs.io/en/stable/satnogs-client/doc/raspi-install.html satnogs.readthedocs.io].&lt;br /&gt;
&lt;br /&gt;
* If you run into anything in the instructions that is unclear, please submit an issue against [https://gitlab.com/librespacefoundation/satnogs/satnogs-docs the documentation repository].&lt;br /&gt;
&lt;br /&gt;
= Raspbian =&lt;br /&gt;
&lt;br /&gt;
== Download ==&lt;br /&gt;
&lt;br /&gt;
You can download the latest Raspbian SatNOGS image following the links from the [https://gitlab.com/librespacefoundation/satnogs/satnogs-pi-gen/tags latest tag on GitLab].&lt;br /&gt;
&lt;br /&gt;
=== Artifacts list ===&lt;br /&gt;
&lt;br /&gt;
The current artifacts list consists of:&lt;br /&gt;
* A Zipped image file&lt;br /&gt;
* An Image info file&lt;br /&gt;
* A SHA256 checksums file&lt;br /&gt;
&lt;br /&gt;
== Data integrity verification ==&lt;br /&gt;
&lt;br /&gt;
You should verify the data integrity of the artifacts by checking the SHA256 checksums. On Linux, run &amp;lt;code&amp;gt;sha256sum -c sha256sums&amp;lt;/code&amp;gt; in the directory where the artifacts are downloaded&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sha256sum -c sha256sums &lt;br /&gt;
2017-09-10-Raspbian-SatNOGS-master-lite.info: OK&lt;br /&gt;
image_2017-09-10-Raspbian-SatNOGS-master-lite.zip: OK&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Flashing ==&lt;br /&gt;
&lt;br /&gt;
[https://www.raspberrypi.org/documentation/installation/installing-images/README.md Follow the usual Raspbian flashing instructions], and boot your Raspberry Pi.&lt;br /&gt;
&lt;br /&gt;
== Networking ==&lt;br /&gt;
&lt;br /&gt;
If you are using wired Ethernet you should get connectivity right away. If you are using wireless then see [https://www.raspberrypi.org/documentation/configuration/wireless/wireless-cli.md this doc for network configuration instructions].&lt;br /&gt;
&lt;br /&gt;
== Setup ==&lt;br /&gt;
&lt;br /&gt;
SSH to the Raspberry Pi with user &amp;quot;pi&amp;quot; and password &amp;quot;raspberry&amp;quot; (no quotes).  Run &amp;quot;sudo satnogs-setup&amp;quot; to set basic configuration. Select &amp;quot;quit&amp;quot; when you are finished, and  the Raspberry Pi will reconfigure itself; this may take some time.&lt;br /&gt;
&lt;br /&gt;
* Note: you can always reconfigure the software by running &amp;quot;sudo satnogs-setup -n&amp;quot; again. &lt;br /&gt;
&lt;br /&gt;
* Note: You may find further details about the following options on the [http://satnogs.readthedocs.io/en/stable/satnogs-client/doc/raspi-install.html satnogs.readthedocs.io] page.&lt;br /&gt;
&lt;br /&gt;
=== Basic setup ===&lt;br /&gt;
&lt;br /&gt;
* '''SATNOGS_API_TOKEN''':  The API token assigned to your ground station on the SatNOGS Network website.&lt;br /&gt;
&lt;br /&gt;
* '''SATNOGS_NETWORK_API_URL''':  The API for the SatNOGS network site.  If you're working on the stage environment, this is https://network-dev.satnogs.org/api/; if you're working on the prod environment, this is https://network.satnogs.org/api/.&lt;br /&gt;
&lt;br /&gt;
* '''SATNOGS_RX_DEVICE''':  If you are using an RTL-SDR, this is &amp;lt;code&amp;gt;rtlsdr&amp;lt;/code&amp;gt;.  Other devices supported by gr-satnogs include &amp;lt;code&amp;gt;usrpb200&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;usrp2&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;airspy&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;hackrf&amp;lt;/code&amp;gt;; a complete list can be found [https://gitlab.com/librespacefoundation/satnogs/gr-satnogs/blob/master/apps/flowgraphs/satellites/README.md here].&lt;br /&gt;
&lt;br /&gt;
* '''SATNOTS_STATION_ELEV''':  The elevation of your ground station in metres.&lt;br /&gt;
&lt;br /&gt;
* '''SATNOTS_STATION_ID''':  The ID assigned to your station in the SatNOGS network site (either stage or prod).&lt;br /&gt;
&lt;br /&gt;
* '''SATNOTS_STATION_LAT''': The latitude of your station.  North is positive, south is negative.&lt;br /&gt;
&lt;br /&gt;
* '''SATNOTS_STATION_LONG''': The longitude of your station.  East is positive, west is negative.&lt;br /&gt;
&lt;br /&gt;
* '''HAMLIB_UTILS_ROT_ENABLED''':  Whether or not to enable the Hamlibs rotator daemon.  Rotctld is a software daemon that provides a network server to control a rotator on a serial port.  If you don't have a rotator (like the [https://wiki.satnogs.org/No_rotator No rotator setup]), enter &amp;lt;code&amp;gt;False&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
* '''HAMLIB_UTILS_ROT_OPTS''':  Options for rotcld.&lt;br /&gt;
&lt;br /&gt;
== Updating ==&lt;br /&gt;
&lt;br /&gt;
To update SatNOGS software, re-run &amp;lt;code&amp;gt;sudo satnogs-setup&amp;lt;/code&amp;gt;. This will pull the latest Ansible playbook and update if necessary.&lt;br /&gt;
&lt;br /&gt;
Raspbian packages can be updated using the normal APT updating methods (e.g. &amp;lt;code&amp;gt;apt-get upgrade&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;aptitude&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
WARNING: An update can potentially interrupt a running observation!&lt;br /&gt;
&lt;br /&gt;
== Testing ==&lt;br /&gt;
&lt;br /&gt;
To see if satnogs-client has started successfully, check the logs with journalctl:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
journalctl -u satnogs-client.service&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You should see entries running approximately once per minute that look like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Oct 01 23:02:13 raspberrypi satnogs-client[6695]:  * Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)&lt;br /&gt;
Oct 01 23:02:14 raspberrypi satnogs-client[6695]: 2017-10-01 23:02:14,466 - satnogsclient - INFO - [LD] Downlink thread waiting for first downlink packet&lt;br /&gt;
Oct 01 23:03:14 raspberrypi satnogs-client[6695]: 2017-10-01 23:03:14,450 - apscheduler.executors.default - INFO - Running job &amp;quot;get_jobs (trigger: interval[0:01:00], next run at: 2017-10-01 23:03:14 UTC)&amp;quot; (scheduled at 2017-10-01 23:03:14.423393+00:00)&lt;br /&gt;
Oct 01 23:03:47 raspberrypi satnogs-client[6695]: 2017-10-01 23:03:47,324 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:5011&lt;br /&gt;
Oct 01 23:03:47 raspberrypi satnogs-client[6695]: 2017-10-01 23:03:47,325 - satnogsclient - DEBUG - Sending message: []&lt;br /&gt;
Oct 01 23:03:47 raspberrypi satnogs-client[6695]: 2017-10-01 23:03:47,327 - apscheduler.executors.default - INFO - Job &amp;quot;get_jobs (trigger: interval[0:01:00], next run at: 2017-10-01 23:04:14 UTC)&amp;quot; executed successfully&lt;br /&gt;
Oct 01 23:04:14 raspberrypi satnogs-client[6695]: 2017-10-01 23:04:14,453 - apscheduler.executors.default - INFO - Running job &amp;quot;get_jobs (trigger: interval[0:01:00], next run at: 2017-10-01 23:04:14 UTC)&amp;quot; (scheduled at 2017-10-01 23:04:14.423393+00:00)&lt;br /&gt;
Oct 01 23:04:14 raspberrypi satnogs-client[6695]: 2017-10-01 23:04:14,484 - apscheduler.executors.default - INFO - Running job &amp;quot;post_data (trigger: interval[0:02:00], next run at: 2017-10-01 23:04:14 UTC)&amp;quot; (scheduled at 2017-10-01 23:04:14.436367+00:00)&lt;br /&gt;
Oct 01 23:04:14 raspberrypi satnogs-client[6695]: 2017-10-01 23:04:14,489 - apscheduler.executors.default - INFO - Job &amp;quot;post_data (trigger: interval[0:02:00], next run at: 2017-10-01 23:04:14 UTC)&amp;quot; executed successfully&lt;br /&gt;
Oct 01 23:04:15 raspberrypi satnogs-client[6695]: 2017-10-01 23:04:15,627 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:5011&lt;br /&gt;
Oct 01 23:04:15 raspberrypi satnogs-client[6695]: 2017-10-01 23:04:15,628 - satnogsclient - DEBUG - Sending message: []&lt;br /&gt;
Oct 01 23:04:15 raspberrypi satnogs-client[6695]: 2017-10-01 23:04:15,629 - apscheduler.executors.default - INFO - Job &amp;quot;get_jobs (trigger: interval[0:01:00], next run at: 2017-10-01 23:05:14 UTC)&amp;quot; executed successfully&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you see that, great -- you're ready to [[Operation|schedule your first observation]]! If not, check out the [[Troubleshooting]] page.&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=Operation&amp;diff=1794</id>
		<title>Operation</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=Operation&amp;diff=1794"/>
		<updated>2017-10-02T14:08:22Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Minor formatting changes&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Scheduling your first test observation ==&lt;br /&gt;
&lt;br /&gt;
'''Assumptions:'''&lt;br /&gt;
&lt;br /&gt;
* You've set up your [[Raspberry Pi 3|SatNOGS client successfully]]&lt;br /&gt;
* You've created an account on the [https://network-dev.satnogs.org/ Stage Environment], created a ground station, and it's showing up as &amp;quot;online&amp;quot;&lt;br /&gt;
&lt;br /&gt;
If you've run into any problems with those steps, check out the [[Troubleshooting]] page or ask for help in [https://community.libre.space/c/satnogs the community forum], [https://riot.im/app/#/room/#satnogs:matrix.org the Matrix room], or on IRC at #satnogs on Freenode.&lt;br /&gt;
&lt;br /&gt;
'''SatNOGS Network:'''&lt;br /&gt;
&lt;br /&gt;
* Navigate your ground station page in the Stage Environment (user name -&amp;gt; &amp;quot;My Profile&amp;quot; -&amp;gt; click on the name of your ground station).&lt;br /&gt;
* Select the &amp;quot;Upcoming passes&amp;quot; tab.&lt;br /&gt;
* Look for a pass with a &amp;quot;schedule&amp;quot; button that isn't greyed out, and click it.&lt;br /&gt;
* In the &amp;quot;New Observation&amp;quot; page that comes up, click the &amp;quot;Calculate&amp;quot; button, then click &amp;quot;Schedule&amp;quot;.&lt;br /&gt;
* You should now see a page for that observation; in the &amp;quot;Waterfall&amp;quot; tab, you should see &amp;quot;Waiting for waterfall&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
'''Ground Station'''&lt;br /&gt;
&lt;br /&gt;
Now SSH to your ground station computer and run these steps:&lt;br /&gt;
&lt;br /&gt;
* Follow the satnogs-client logs. Depending on your setup, this might be done with &amp;lt;code&amp;gt;journalctl -f -u satnogs-client.service&amp;lt;/code&amp;gt;, or &amp;lt;code&amp;gt;tail -F /var/log/supervisor/satnogs.log&amp;lt;/code&amp;gt;&lt;br /&gt;
* Before the observation is scheduled to start, you should see your client wake up once per minute to check for new jobs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Oct 02 00:16:02 raspberrypi satnogs-client[10124]: 2017-10-02 00:16:02,477 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:5011&lt;br /&gt;
Oct 02 00:16:02 raspberrypi satnogs-client[10124]: 2017-10-02 00:16:02,479 - satnogsclient - DEBUG - Sending message: [{&amp;quot;origin&amp;quot;: &amp;quot;network&amp;quot;, &amp;quot;transmitter&amp;quot;: &amp;quot;uXJ8NQNcH8b9osRc&lt;br /&gt;
Oct 02 00:16:02 raspberrypi satnogs-client[10124]: 2017-10-02 00:16:02,488 - apscheduler.executors.default - INFO - Job &amp;quot;get_jobs (trigger: interval[0:01:00], next run at: 2&lt;br /&gt;
Oct 02 00:16:59 raspberrypi satnogs-client[10124]: 2017-10-02 00:16:59,615 - apscheduler.executors.default - INFO - Running job &amp;quot;get_jobs (trigger: interval[0:01:00], next r&lt;br /&gt;
Oct 02 00:16:59 raspberrypi satnogs-client[10124]: 2017-10-02 00:16:59,661 - apscheduler.executors.default - INFO - Running job &amp;quot;post_data (trigger: interval[0:02:00], next &lt;br /&gt;
Oct 02 00:16:59 raspberrypi satnogs-client[10124]: 2017-10-02 00:16:59,668 - apscheduler.executors.default - INFO - Job &amp;quot;post_data (trigger: interval[0:02:00], next run at: &lt;br /&gt;
Oct 02 00:17:00 raspberrypi satnogs-client[10124]: 2017-10-02 00:17:00,906 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:5011&lt;br /&gt;
Oct 02 00:17:00 raspberrypi satnogs-client[10124]: 2017-10-02 00:17:00,908 - satnogsclient - DEBUG - Sending message: [{&amp;quot;origin&amp;quot;: &amp;quot;network&amp;quot;, &amp;quot;transmitter&amp;quot;: &amp;quot;uXJ8NQNcH8b9osRc&lt;br /&gt;
Oct 02 00:17:00 raspberrypi satnogs-client[10124]: 2017-10-02 00:17:00,912 - apscheduler.executors.default - INFO - Job &amp;quot;get_jobs (trigger: interval[0:01:00], next run at: 2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* At the scheduled time for the observation, you should see the client kick off the observation:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Oct 02 00:18:00 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:00,774 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:5011&lt;br /&gt;
Oct 02 00:18:00 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:00,776 - satnogsclient - DEBUG - Sending message: [{&amp;quot;origin&amp;quot;: &amp;quot;network&amp;quot;, &amp;quot;transmitter&amp;quot;: &amp;quot;uXJ8NQNcH8b9osRc&lt;br /&gt;
Oct 02 00:18:00 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:00,781 - apscheduler.executors.default - INFO - Job &amp;quot;get_jobs (trigger: interval[0:01:00], next run at: 2&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,022 - apscheduler.executors.default - INFO - Running job &amp;quot;spawn_observer (trigger: date[2017-10-02 00:&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,082 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:4533&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,109 - satnogsclient - DEBUG - Sending message: p&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,110 - satnogsclient - DEBUG - Received message: 0.000000&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 0.000000&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,111 - satnogsclient - DEBUG - Opening TCP socket: 127.0.0.1:4532&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,115 - satnogsclient - DEBUG - Sending message: P 188.276951189 -0.0155264223734&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,119 - satnogsclient - DEBUG - Received message: RPRT -1&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,143 - satnogsclient - DEBUG - Sending message: F 436038107&lt;br /&gt;
Oct 02 00:18:22 raspberrypi satnogs-client[10124]: 2017-10-02 00:18:22,144 - satnogsclient - DEBUG - Received message: RPRT 0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* After the observation is over, you should see the client submit the data to the SatNOGS network&lt;br /&gt;
&lt;br /&gt;
In the SatNOGS Stage Environment, refresh the Observation page.  You should now see a waterfall plot for your data.&lt;br /&gt;
&lt;br /&gt;
If that all worked -- congratulations!  You've just successfully completed your first SatNOGS observation.&lt;br /&gt;
&lt;br /&gt;
If it didn't work, don't feel bad -- it can take a few attempts before you get it right.  Have a look at the [[Troubleshooting]] page for tips, and don't forget to contact the community if you need help.&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=G-5500&amp;diff=1793</id>
		<title>G-5500</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=G-5500&amp;diff=1793"/>
		<updated>2017-10-02T14:02:04Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: /* Control Electronics */ replace repo link with gitlab&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Rotator&lt;br /&gt;
|Rotator-Name=Yaesu G-5500&lt;br /&gt;
|image=G5500.jpg&lt;br /&gt;
|type= Az/El&lt;br /&gt;
|cost=900 USD&lt;br /&gt;
|status= Production&lt;br /&gt;
|source-repo=N/A&lt;br /&gt;
|documentation= http://www.yaesu.com/downloadFile.cfm?FileID=8814&amp;amp;FileCatID=155&amp;amp;FileName=G%2D5500%5FIM%5FENG%5FE12901004.pdf&amp;amp;FileContentType=application%2Fpdf&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Intro ==&lt;br /&gt;
&lt;br /&gt;
G-5000 AZ/EL is a rotator built by Yaesu.&lt;br /&gt;
&lt;br /&gt;
==Specifications==&lt;br /&gt;
&lt;br /&gt;
The Azimuth Rotator features a turning range of 450°, while the Elevation Rotator has a rotation range of 180°.&lt;br /&gt;
&lt;br /&gt;
== Control Electronics ==&lt;br /&gt;
&lt;br /&gt;
Yaesu sells a computer control device, the G-232A. Since then many alternative, more cost-efficient alternatives have appeared on the home brew market. The SatNOGS project has an arduino shield that, when combined with K3NG Arduino code, can act as a Yaesu G-5500 controller for little cost. See the [https://gitlab.com/librespacefoundation/satnogs/g5500-ardushield arduino shield].&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
&lt;br /&gt;
See Yaesu's documentation at http://www.yaesu.com/downloadFile.cfm?FileID=8814&amp;amp;FileCatID=155&amp;amp;FileName=G%2D5500%5FIM%5FENG%5FE12901004.pdf&amp;amp;FileContentType=application%2Fpdf&lt;br /&gt;
&lt;br /&gt;
[[Category:Rotator]]&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=Main_Page&amp;diff=1792</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=Main_Page&amp;diff=1792"/>
		<updated>2017-10-02T13:40:38Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: align diagram to center&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to [https://satnogs.org/ ''SatNOGS''] wiki. Here you can find more information on how to get started with SatNOGS, building and operating a satellite ground station and joining the SatNOGS Network. Feel free to edit the wiki and add your own ground station designs ([[rotators]], [[antennas]], [[Rotators|electronics]]).&lt;br /&gt;
&lt;br /&gt;
[[File:Satnogs_imagemap.png|center|800px|]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border-radius: 3px;width:25%;height:120px;background-color:#F6F6F6;float:left;display:block;margin:1.5%;border: 1px solid #A7D7F9;text-align:center;padding:2.5%;padding-top:0px&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;What is SatNOGS&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Intro|Intro to SatNOGS]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Ground Stations|Intro to ground stations]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Glossary]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;border-radius: 3px;width:25%;height:150px;background-color:#F6F6F6;float:left;display:block;margin:1.5%;border: 1px solid #A7D7F9;text-align:center;padding:2.5%;padding-top:0px&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Join SatNOGS&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Get_Started|Learn how to get started]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Build|Build a ground station]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Operation|Operate a ground station]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Troubleshooting|Troubleshooting]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;border-radius: 3px;width:25%;height:120px;background-color:#F6F6F6;float:left;display:block;margin:1.5%;border: 1px solid #A7D7F9;text-align:center;padding:2.5%;padding-top:0px&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Contribute&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[GS Software|Software contribution]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Provide documentation]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[Satnogs DB]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=Socis_2016_ideas&amp;diff=1683</id>
		<title>Socis 2016 ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=Socis_2016_ideas&amp;diff=1683"/>
		<updated>2017-08-29T10:21:04Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: add markdown tag&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MARKDOWN}}&lt;br /&gt;
&lt;br /&gt;
These ideas were contributed by our developers and users for SOCIS 2016. Some of them may be rough. If you wish to submit a proposal based on  these ideas, you may wish to contact the developers and find out more  about the particular suggestion you're looking at. Students are welcome to provide their own ideas for projects in collaboration with the SatNOGS developer community.&lt;br /&gt;
&lt;br /&gt;
The major communication and coordination systems of the SatNOGS project are it's [forum](http://community.satnogs.org) and it's [github repositories](http://github.com/satnogs).&lt;br /&gt;
&lt;br /&gt;
ESA SOCIS summer of code is an European Space Agency initiative, we encourage every party interested to visit it's [website](http://sophia.estec.esa.int/socis) and read it's [FAQ](http://sophia.estec.esa.int/socis/faq) &lt;br /&gt;
&lt;br /&gt;
Instructions&lt;br /&gt;
====&lt;br /&gt;
Students wishing to participate in SOCIS must realise this is more than a mere formality. You will be required to produce code for Libre Space Foundation projects in 3 months.&lt;br /&gt;
&lt;br /&gt;
You don't have to be a proven developer -- in fact, this whole program is meant to facilitate joining  Open Source communities. However, experience in coding and/or experience with Python libraries and applications is welcome.&lt;br /&gt;
&lt;br /&gt;
You should start familiarizing yourself with the components that you plan on working on before the start date. LSF developers are available on the community site and on IRC for help.&lt;br /&gt;
Recommended steps&lt;br /&gt;
=====&lt;br /&gt;
 * Read ESA's instructions for participating&lt;br /&gt;
 * Take a look at the list of ideas&lt;br /&gt;
 * Come up with project that you're interested in&lt;br /&gt;
 * Write a first draft proposal and get someone to review it for you&lt;br /&gt;
 * Submit it using Google's web interface &lt;br /&gt;
&lt;br /&gt;
Coming up with an interesting idea is probably the most difficult part of all. It should be something interesting for **SatNOGS**, for **Open Source in Space** and particularly for **you**.&lt;br /&gt;
&lt;br /&gt;
Finding out what the most pressing issues are in the projects you're interested in is a good start.Learning the codebase and even submitting issues and identifying bugs is also a good way to start. We recommend strongly doing that and we will look favorably on applications from students who have started to act like Open Source developers.&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
# Software Projects&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Network](https://github.com/satnogs/satnogs-network)&lt;br /&gt;
### Data Dashboards using SatNOGS observation data/metadata&lt;br /&gt;
* **Description** Supply an overview of the observation data/metadata collected instead of the detailed view currently available &lt;br /&gt;
* **Skills needed** Django/Python , HTML, CSS3, Javascript&lt;br /&gt;
* **Expected results** Create standards based user facing dashboards for SatNOGS recorded data and metadata to provide an overview of a SatNOGS observation.&lt;br /&gt;
* **Mentor**: @comzeradd&lt;br /&gt;
&lt;br /&gt;
### Concatenate observational data&lt;br /&gt;
* **Description**: An observer should be able to access a concatenated view of an observation that is calculated (and compiled) by multiple data from different ground stations. Still SatNOGS Network must be able to provide a single url page for a single observation part (ie by one ground station pass).&lt;br /&gt;
* **Skills needed**: Django/Python, HTML, CSS3, Javascript.&lt;br /&gt;
* **Expected results**: Single URL for a single observation part to allow sharing of data, page must be accessible in all modern browsers&lt;br /&gt;
* **Mentor**: @comzeradd&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Client](https://github.com/satnogs/satnogs-client)&lt;br /&gt;
### Build a web based controller able to control the SatNOGS client&lt;br /&gt;
* **Description**: Expand the current web interface of satnogs-client with a web based controller to allow users to connect to their rotator using a browser without the need to connect to the internet.&lt;br /&gt;
* **Skills needed**: Python, Flask&lt;br /&gt;
* **Expected results**: An embeddable web application able to control SatNOGS client via a web browser&lt;br /&gt;
* **Mentor**: @jinxcat&lt;br /&gt;
&lt;br /&gt;
### Package SatNOGS client for different distributions&lt;br /&gt;
* **Description**: SatNOGS client must be available in a binary package form for several distributions to further it's ease of modularity.&lt;br /&gt;
* **Skills needed**: Packaging on major distributions.&lt;br /&gt;
* **Expected results**: Released and submitted upstream packages on major distributions.&lt;br /&gt;
* **Mentor**: @axilleas&lt;br /&gt;
&lt;br /&gt;
## SatNOGS Infrastructure&lt;br /&gt;
### Improve logging and monitoring&lt;br /&gt;
* **Description**: Improve SatNOGS logging and monitoring capabilities to allow SatNOGS Network to monitor which ground station are operating properly&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: Logs and Monitoring capabilities for the Network administrators&lt;br /&gt;
* **Mentor**: @axilleas&lt;br /&gt;
&lt;br /&gt;
### Improve distributed storage of observation data&lt;br /&gt;
* **Description**: SatNOGS observation data must be able to be stored in a distributed manner&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: A distributed storage option for observation data&lt;br /&gt;
* **Mentor**: @jinxcat&lt;br /&gt;
&lt;br /&gt;
### Add error rate and karma policies for SatNOGS clients&lt;br /&gt;
* **Description**:  SatNOGS clients should be able to use error rate and karma policies in order to prioritize observation jobs.&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: Error and karma policies applied to observation job prioritization&lt;br /&gt;
* **Mentor**: @jinxcat&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
# [SatNOGS Hardware](https://github.com/satnogs/satnogs-hardware)&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Arduino](https://github.com/satnogs/satnogs-arduino)&lt;br /&gt;
&lt;br /&gt;
### Closed loop system with feedback (encoders, stepper motors)&lt;br /&gt;
* **Description**: Design a closed loop system with positioning feedback, based on the existing tracker design, as an alternative to the current setup.&lt;br /&gt;
* **Skills needed**: Electronics, Arduino, PID tuning, Encoder circuits&lt;br /&gt;
* **Expected results**: Schematic, routing, board design, Arduino software that implements it and preferably a working prototype.&lt;br /&gt;
* **Mentor**: @zisi&lt;br /&gt;
&lt;br /&gt;
### Design and implement a stand alone open source stepper controller&lt;br /&gt;
* **Description**: Create a stand alone open source stepper controller to modularize our electronics. Use an established protocol to communicate with our microprocessor (e.g. I2C).&lt;br /&gt;
* **Skills needed**: Electronics, Arduino, Stepper controllers, I2C ,SPI or 1Wire&lt;br /&gt;
* **Expected results**: Schematic, routing, board design, Arduino software that implements it and preferably a working prototype.&lt;br /&gt;
* **Mentor**: @zisi&lt;br /&gt;
&lt;br /&gt;
### Arduino Firmware restructure with tests and fixes&lt;br /&gt;
* **Description**: Rewriting the current Arduino firmware to resolve overflow errors and implement tests for extreme conditions and use cases.&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Embedded debugging, Algorithm Design&lt;br /&gt;
* **Expected results**: A new Arduino firmware with less function overflow errors compared to the current and tests.&lt;br /&gt;
* **Mentor**: @zisi&lt;br /&gt;
&lt;br /&gt;
### Optimize rotor movement algorithm&lt;br /&gt;
* **Description**: Implement an improved and optimized rotor movement algorithm, to minimize path (length and time), apply tracking continuity (on extreme points) and apply instrumental limitations (cable twisting, horizon limits, extreme points, extreme conditions)&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Algorithm Design&lt;br /&gt;
* **Expected results**: Arduino code that implements the use cases on description.&lt;br /&gt;
* **Mentor**: @papamat&lt;br /&gt;
&lt;br /&gt;
### Homing and setup bootstrap functions, testing functions&lt;br /&gt;
* **Description**: Design and implement a setup bootstrapping (first-run) and testing of ground station suite.&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Algorithm Design&lt;br /&gt;
* **Expected results**: Arduino code that implements the use cases on description.&lt;br /&gt;
* **Mentor**: @zisi&lt;br /&gt;
&lt;br /&gt;
[[Category:SOC]]&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=GSOC_2015_Ideas&amp;diff=1682</id>
		<title>GSOC 2015 Ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=GSOC_2015_Ideas&amp;diff=1682"/>
		<updated>2017-08-29T10:20:51Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: add markdown tag&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MARKDOWN}}&lt;br /&gt;
&lt;br /&gt;
These ideas were contributed by our developers and users for [Google Summer of Code 2015](http://www.google-melange.com/gsoc/homepage/google/gsoc2015). Some of them may be rough. If you wish to submit a proposal based on  these ideas, you may wish to contact the developers and find out more  about the particular suggestion you're looking at. Students are welcome to provide their own ideas for projects in collaboration with the SatNOGS developer community.&lt;br /&gt;
&lt;br /&gt;
The major communication and coordination systems of the SatNOGS project are it's [forum](http://community.satnogs.org) and it's [github repositories](http://github.com/satnogs). All interested students must apply their proposals at info@satnogs.org if selected they will be assigned two mentors (a primary and alternative mentor). &lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
# Software Projects&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Network](https://github.com/satnogs/satnogs-network)&lt;br /&gt;
### Data Dashboards using SatNOGS observation data/metadata&lt;br /&gt;
* **Description** Supply an overview of the observation data/metadata collected instead of the detailed view currently available &lt;br /&gt;
* **Skills needed** Django/Python , HTML, CSS3, Javascript&lt;br /&gt;
* **Expected results** Create  standards based user facing dashboards for SatNOGS recorded data and  metadata to provide an overview of a SatNOGS observation.&lt;br /&gt;
&lt;br /&gt;
### Concatenate observational data&lt;br /&gt;
* **Description**: An observer should be able to access a concatenated view of an observation that is calculated (and compiled) by multiple data from different ground stations. Still SatNOGS Network must be able to provide a single url page for a single observation part (ie by one ground station pass).&lt;br /&gt;
* **Skills needed**: Django/Python, HTML, CSS3, Javascript.&lt;br /&gt;
* **Expected results**: Single URL for a single observation part to allow sharing of data, page must be accessible in all modern browsers&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS DB](https://github.com/satnogs/satnogs-db)&lt;br /&gt;
### Transition our proof of concept SatNOGS DB to a working product.&lt;br /&gt;
* **Description** Design and assist implementing a transition of the SatNOGS DB project from a working prototype to a product&lt;br /&gt;
* **Skills needed** Angular.js CouchDB&lt;br /&gt;
* **Expected results** SatNOGS DB must be able to accept data from crowd-sourcing and expose them in an API.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
### Connect SatNOGS network to DB to get up-to-date transponder information.&lt;br /&gt;
* **Description**: Design, and implement a SatNOGS Network to SatNOGS DB connection (via an open API) to populate SatNOGS Network with up to date transponder information and SatNOGS DB with up to date tle satellite listings.&lt;br /&gt;
* **Skills needed**: Django, AngularDB&lt;br /&gt;
* **Expected results**: SatNOGS DB must be able to populate SatNOGS Network with all transponder data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Client](https://github.com/satnogs/satnogs-client)&lt;br /&gt;
### Build a web based controller able to control the SatNOGS client&lt;br /&gt;
* **Description**: Build a web based controller to allow users to connect to the SatNOGS client using a browser without the need to connect to the internet.&lt;br /&gt;
* **Skills needed**: HTML5, OpenWRT, JS, CSS3&lt;br /&gt;
* **Expected results**: An embeddable web application able to control SatNOGS client via a web browser&lt;br /&gt;
&lt;br /&gt;
### Package SatNOGS client for different distributions&lt;br /&gt;
* **Description**: SatNOGS client must be available in a binary package form for several distributions to further it's ease of modularity.&lt;br /&gt;
* **Skills needed**: Packaging on major distributions.&lt;br /&gt;
* **Expected results**: Released and submitted upstream packages on major distributions.&lt;br /&gt;
&lt;br /&gt;
## SatNOGS Infrastructure&lt;br /&gt;
### Improve logging and monitoring&lt;br /&gt;
* **Description**: Improve SatNOGS logging and monitoring capabilities to allow SatNOGS Network to monitor which ground station are operating properly&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: Logs and Monitoring capabilities for the Network administrators&lt;br /&gt;
&lt;br /&gt;
### Improve distributed storage of observation data&lt;br /&gt;
* **Description**: SatNOGS observation data must be able to be stored in a distributed manner&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: A distributed storage option for observation data&lt;br /&gt;
&lt;br /&gt;
### Add error rate and karma policies for SatNOGS clients&lt;br /&gt;
* **Description**:  SatNOGS clients should be able to use error rate and karma policies in order to prioritize observation jobs.&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: Error and karma policies applied to observation job prioritization&lt;br /&gt;
&lt;br /&gt;
### Docker-ise SatNOGS setup (for both client and network)&lt;br /&gt;
* **Description**: To provide a streamlined setup process for interested parties a Docker image for SatNOGS client and SatNOGS network should be created.&lt;br /&gt;
* **Skills needed**: Docker, Python&lt;br /&gt;
* **Expected results**: Fully functional Docker images for SatNOGS Client Network.&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
# [SatNOGS Hardware](https://github.com/satnogs/satnogs-hardware)&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Arduino](https://github.com/satnogs/satnogs-arduino)&lt;br /&gt;
&lt;br /&gt;
### Closed loop system with feedback (encoders, stepper motors)&lt;br /&gt;
* **Description**: Design a closed loop system with positioning feedback, based on the existing tracker design, as an alternative to the current setup.&lt;br /&gt;
* **Skills needed**: Electronics, Arduino, PID tuning, Encoder circuits&lt;br /&gt;
* **Expected results**: Schematic, routing, board design, Arduino software that implements it and preferably a working prototype.&lt;br /&gt;
&lt;br /&gt;
### Design and implement a stand alone open source stepper controller&lt;br /&gt;
* **Description**: Create a stand alone open source stepper controller to modularize our electronics. Use an established protocol to communicate with our microprocessor (e.g. I2C).&lt;br /&gt;
* **Skills needed**: Electronics, Arduino, Stepper controllers, I2C ,SPI or 1Wire&lt;br /&gt;
* **Expected results**: Schematic, routing, board design, Arduino software that implements it and preferably a working prototype.&lt;br /&gt;
&lt;br /&gt;
### Arduino Firmware restructure with tests and fixes&lt;br /&gt;
* **Description**: Rewriting the current Arduino firmware to resolve overflow errors and implement tests for extreme conditions and use cases.&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Embedded debugging, Algorithm Design&lt;br /&gt;
* **Expected results**: A new Arduino firmware with less function overflow errors compared to the current and tests.&lt;br /&gt;
&lt;br /&gt;
### Implement or extend rotor control protocols in order to handle additional commands and errors&lt;br /&gt;
* **Description**: Additional errors and commands should be implemented to the current control protocols used in Easycomm2 and rotctrl&lt;br /&gt;
* **Skills needed**: Serial communications, Arduino, Embedded programming, Embedded debugging&lt;br /&gt;
* **Expected results**: Implementing or extending  rotor control protocols which will handle addition commands and errors.&lt;br /&gt;
&lt;br /&gt;
### Optimize rotor movement algorithm&lt;br /&gt;
* **Description**: Implement an improved and optimized rotor movement algorithm, to minimize path (length and time), apply tracking continuity (on extreme points) and apply instrumental limitations (cable twisting, horizon limits, extreme points, extreme conditions)&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Algorithm Design&lt;br /&gt;
* **Expected results**: Arduino code that implements the use cases on description.&lt;br /&gt;
&lt;br /&gt;
### Homing and setup bootstrap functions, testing functions&lt;br /&gt;
* **Description**: Design and implement a setup bootstrapping (first-run) and testing of ground station suite.&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Algorithm Design&lt;br /&gt;
* **Expected results**: Arduino code that implements the use cases on description.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:SOC]]&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=GSOC_2016_Ideas&amp;diff=1681</id>
		<title>GSOC 2016 Ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=GSOC_2016_Ideas&amp;diff=1681"/>
		<updated>2017-08-29T10:20:42Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: add markdown tag&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MARKDOWN}}&lt;br /&gt;
&lt;br /&gt;
These ideas were contributed by our developers and users for [Google Summer of Code 2016](https://summerofcode.withgoogle.com). Some of them may be rough. If you wish to submit a proposal based on  these ideas, you may wish to contact the developers and find out more  about the particular suggestion you're looking at. Students are welcome to provide their own ideas for projects in collaboration with the SatNOGS developer community.&lt;br /&gt;
&lt;br /&gt;
The major communication and coordination systems of the SatNOGS project are it's [forum](http://community.satnogs.org) and it's [github repositories](http://github.com/satnogs).&lt;br /&gt;
&lt;br /&gt;
Instructions&lt;br /&gt;
====&lt;br /&gt;
Students wishing to participate in Summer of Code must realise this is more than a mere formality. You will be required to produce code for Libre Space Foundation projects in 3 months.&lt;br /&gt;
&lt;br /&gt;
You don't have to be a proven developer -- in fact, this whole program is meant to facilitate joining  Open Source communities. However, experience in coding and/or experience with Python libraries and applications is welcome.&lt;br /&gt;
&lt;br /&gt;
You should start familiarizing yourself with the components that you plan on working on before the start date. LSF developers are available on the community site and on IRC for help.&lt;br /&gt;
Recommended steps&lt;br /&gt;
=====&lt;br /&gt;
 * Read Google's instructions for participating&lt;br /&gt;
 * Take a look at the list of ideas&lt;br /&gt;
 * Come up with project that you're interested in&lt;br /&gt;
 * Write a first draft proposal and get someone to review it for you&lt;br /&gt;
 * Submit it using Google's web interface &lt;br /&gt;
&lt;br /&gt;
Check the KDE's [Student Proposal Guidelines](https://community.kde.org/GSoC#Student_proposal_guidelines) for more hints on what your application should look like. &lt;br /&gt;
&lt;br /&gt;
Coming up with an interesting idea is probably the most difficult part of all. It should be something interesting for **LSF**, for **Open Source in Space** and particularly for **you**.&lt;br /&gt;
&lt;br /&gt;
Finding out what the most pressing issues are in the projects you're interested in is a good start.Learning the codebase and even submitting issues and identifying bugs is also a good way to start. We recommend strongly doing that and we will look favorably on applications from students who have started to act like Open Source developers.&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
# Software Projects&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Network](https://github.com/satnogs/satnogs-network)&lt;br /&gt;
### Data Dashboards using SatNOGS observation data/metadata&lt;br /&gt;
* **Description** Supply an overview of the observation data/metadata collected instead of the detailed view currently available &lt;br /&gt;
* **Skills needed** Django/Python , HTML, CSS3, Javascript&lt;br /&gt;
* **Expected results** Create standards based user facing dashboards for SatNOGS recorded data and metadata to provide an overview of a SatNOGS observation.&lt;br /&gt;
* **Mentor**: @comzeradd&lt;br /&gt;
&lt;br /&gt;
### Concatenate observational data&lt;br /&gt;
* **Description**: An observer should be able to access a concatenated view of an observation that is calculated (and compiled) by multiple data from different ground stations. Still SatNOGS Network must be able to provide a single url page for a single observation part (ie by one ground station pass).&lt;br /&gt;
* **Skills needed**: Django/Python, HTML, CSS3, Javascript.&lt;br /&gt;
* **Expected results**: Single URL for a single observation part to allow sharing of data, page must be accessible in all modern browsers&lt;br /&gt;
* **Mentor**: @comzeradd&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Client](https://github.com/satnogs/satnogs-client)&lt;br /&gt;
### Build a web based controller able to control the SatNOGS client&lt;br /&gt;
* **Description**: Expand the current web interface of satnogs-client with a web based controller to allow users to connect to their rotator using a browser without the need to connect to the internet.&lt;br /&gt;
* **Skills needed**: Python, Flask&lt;br /&gt;
* **Expected results**: An embeddable web application able to control SatNOGS client via a web browser&lt;br /&gt;
* **Mentor**: @jinxcat&lt;br /&gt;
&lt;br /&gt;
### Package SatNOGS client for different distributions&lt;br /&gt;
* **Description**: SatNOGS client must be available in a binary package form for several distributions to further it's ease of modularity.&lt;br /&gt;
* **Skills needed**: Packaging on major distributions.&lt;br /&gt;
* **Expected results**: Released and submitted upstream packages on major distributions.&lt;br /&gt;
* **Mentor**: @axilleas&lt;br /&gt;
&lt;br /&gt;
## SatNOGS Infrastructure&lt;br /&gt;
### Improve logging and monitoring&lt;br /&gt;
* **Description**: Improve SatNOGS logging and monitoring capabilities to allow SatNOGS Network to monitor which ground station are operating properly&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: Logs and Monitoring capabilities for the Network administrators&lt;br /&gt;
* **Mentor**: @axilleas&lt;br /&gt;
&lt;br /&gt;
### Improve distributed storage of observation data&lt;br /&gt;
* **Description**: SatNOGS observation data must be able to be stored in a distributed manner&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: A distributed storage option for observation data&lt;br /&gt;
* **Mentor**: @jinxcat&lt;br /&gt;
&lt;br /&gt;
### Add error rate and karma policies for SatNOGS clients&lt;br /&gt;
* **Description**:  SatNOGS clients should be able to use error rate and karma policies in order to prioritize observation jobs.&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: Error and karma policies applied to observation job prioritization&lt;br /&gt;
* **Mentor**: @jinxcat&lt;br /&gt;
&lt;br /&gt;
## [Diactoros Firmware](https://github.com/librespacefoundation/diactoros)&lt;br /&gt;
### Enhance diactoros firmware&lt;br /&gt;
* **Description** Implement baud rate negotiation for ground-satellite communications based on link status&lt;br /&gt;
* **Skills needed** C, RF&lt;br /&gt;
* **Expected results**: Significant improvement in data rate of satellite to ground communications&lt;br /&gt;
* **Mentor**: @manostheodoridis&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
# [SatNOGS Hardware](https://github.com/satnogs/satnogs-hardware)&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Arduino](https://github.com/satnogs/satnogs-arduino)&lt;br /&gt;
&lt;br /&gt;
### Closed loop system with feedback (encoders, stepper motors)&lt;br /&gt;
* **Description**: Design a closed loop system with positioning feedback, based on the existing tracker design, as an alternative to the current setup.&lt;br /&gt;
* **Skills needed**: Electronics, Arduino, PID tuning, Encoder circuits&lt;br /&gt;
* **Expected results**: Schematic, routing, board design, Arduino software that implements it and preferably a working prototype.&lt;br /&gt;
* **Mentor**: @zisi&lt;br /&gt;
&lt;br /&gt;
### Design and implement a stand alone open source stepper controller&lt;br /&gt;
* **Description**: Create a stand alone open source stepper controller to modularize our electronics. Use an established protocol to communicate with our microprocessor (e.g. I2C).&lt;br /&gt;
* **Skills needed**: Electronics, Arduino, Stepper controllers, I2C ,SPI or 1Wire&lt;br /&gt;
* **Expected results**: Schematic, routing, board design, Arduino software that implements it and preferably a working prototype.&lt;br /&gt;
* **Mentor**: @zisi&lt;br /&gt;
&lt;br /&gt;
### Arduino Firmware restructure with tests and fixes&lt;br /&gt;
* **Description**: Rewriting the current Arduino firmware to resolve overflow errors and implement tests for extreme conditions and use cases.&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Embedded debugging, Algorithm Design&lt;br /&gt;
* **Expected results**: A new Arduino firmware with less function overflow errors compared to the current and tests.&lt;br /&gt;
* **Mentor**: @zisi&lt;br /&gt;
&lt;br /&gt;
### Optimize rotor movement algorithm&lt;br /&gt;
* **Description**: Implement an improved and optimized rotor movement algorithm, to minimize path (length and time), apply tracking continuity (on extreme points) and apply instrumental limitations (cable twisting, horizon limits, extreme points, extreme conditions)&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Algorithm Design&lt;br /&gt;
* **Expected results**: Arduino code that implements the use cases on description.&lt;br /&gt;
* **Mentor**: @papamat&lt;br /&gt;
&lt;br /&gt;
### Homing and setup bootstrap functions, testing functions&lt;br /&gt;
* **Description**: Design and implement a setup bootstrapping (first-run) and testing of ground station suite.&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Algorithm Design&lt;br /&gt;
* **Expected results**: Arduino code that implements the use cases on description.&lt;br /&gt;
* **Mentor**: @zisi&lt;br /&gt;
&lt;br /&gt;
[[Category:SOC]]&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=GSOC_2017_Ideas&amp;diff=1680</id>
		<title>GSOC 2017 Ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=GSOC_2017_Ideas&amp;diff=1680"/>
		<updated>2017-08-29T10:20:31Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: add markdown tag&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MARKDOWN}}&lt;br /&gt;
&lt;br /&gt;
These ideas were contributed by our developers and users for [Google Summer of Code 2017](https://summerofcode.withgoogle.com). Some of them may be in a rough state, but they can certainly be refined. If you wish to submit a proposal based on  these ideas, you may wish to contact the developers and find out more  about the particular suggestion you're looking at. Students are welcome to provide their own ideas for projects in collaboration with the SatNOGS developer community.&lt;br /&gt;
&lt;br /&gt;
The major communication and coordination systems of the SatNOGS project are its [forum](http://community.satnogs.org) and its [github repositories](http://github.com/satnogs).&lt;br /&gt;
&lt;br /&gt;
Instructions&lt;br /&gt;
====&lt;br /&gt;
Students wishing to participate in Summer of Code must realise this is more than a mere formality. You will be required to produce code for Libre Space Foundation projects in 3 months.&lt;br /&gt;
&lt;br /&gt;
You don't have to be a proven developer, in fact, this whole program is meant to facilitate joining  Open Source communities. However, experience in coding and/or experience with Python libraries and applications is welcome.&lt;br /&gt;
&lt;br /&gt;
You should start familiarizing yourself with the components that you plan on working on before the start date. LSF developers are available on the community site and on IRC for help.&lt;br /&gt;
&lt;br /&gt;
Recommended steps&lt;br /&gt;
=====&lt;br /&gt;
 * Read Google's instructions for participating&lt;br /&gt;
 * Take a look at the list of ideas&lt;br /&gt;
 * Come up with project that you're interested in&lt;br /&gt;
 * Write a first draft proposal and get someone to review it for you&lt;br /&gt;
 * Submit it using Google's web interface &lt;br /&gt;
&lt;br /&gt;
Check the KDE's [Student Proposal Guidelines](https://community.kde.org/GSoC#Student_proposal_guidelines) for more hints on what your application should look like. &lt;br /&gt;
&lt;br /&gt;
Coming up with an interesting idea is probably the most difficult part of all. It should be something interesting for **LSF**, for **Open Source in Space** and particularly for **you**.&lt;br /&gt;
&lt;br /&gt;
Finding out what the most pressing issues are in the projects you're interested in is a good start. Learning the codebase and even submitting issues and identifying bugs is also a good way to start. We recommend strongly doing that and we will look favorably on applications from students who have started to act like Open Source developers.&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
# Software Projects&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS DB](https://github.com/satnogs/satnogs-db)&lt;br /&gt;
### Enhance frontend suggestions and moderation capabilities&lt;br /&gt;
* **Description**: Supply the ability for users to suggest new satellites. Supply the ability to moderators to approve or amend satellite and transmitters suggestions.&lt;br /&gt;
* **Skills needed**: Django/Python , HTML, CSS3, Javascript&lt;br /&gt;
* **Expected results**: All satellite and transmitters data should be crowdsourced and moderated through a simple UI. &lt;br /&gt;
* **Mentor**: @comzeradd&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Client](https://github.com/satnogs/satnogs-client)&lt;br /&gt;
### Build a web based controller able to control the SatNOGS client&lt;br /&gt;
* **Description**: Expand the current web interface of satnogs-client with a web based controller to allow users to connect to their rotator using a browser without the need to connect to the internet.&lt;br /&gt;
* **Skills needed**: Python, Flask&lt;br /&gt;
* **Expected results**: An embeddable web application able to control SatNOGS client via a web browser&lt;br /&gt;
* **Mentor**: @jinxcat&lt;br /&gt;
&lt;br /&gt;
### Package SatNOGS client for different distributions&lt;br /&gt;
* **Description**: SatNOGS client must be available in a binary package form for several distributions to further it's ease of modularity.&lt;br /&gt;
* **Skills needed**: Packaging on major distributions.&lt;br /&gt;
* **Expected results**: Released and submitted upstream packages on major distributions.&lt;br /&gt;
* **Mentor**: @axilleas&lt;br /&gt;
&lt;br /&gt;
## SatNOGS Infrastructure&lt;br /&gt;
### Improve logging and monitoring&lt;br /&gt;
* **Description**: Improve SatNOGS logging and monitoring capabilities to allow SatNOGS Network to monitor which ground station are operating properly&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: Logs and Monitoring capabilities for the Network administrators&lt;br /&gt;
* **Mentor**: @axilleas&lt;br /&gt;
&lt;br /&gt;
### Improve distributed storage of observation data&lt;br /&gt;
* **Description**: SatNOGS observation data must be able to be stored in a distributed manner&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: A distributed storage option for observation data&lt;br /&gt;
* **Mentor**: @jinxcat&lt;br /&gt;
&lt;br /&gt;
### Add error rate and karma policies for SatNOGS clients&lt;br /&gt;
* **Description**: SatNOGS clients should be able to use error rate and karma policies in order to prioritize observation jobs.&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: Error and karma policies applied to observation job prioritization&lt;br /&gt;
* **Mentor**: @jinxcat&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
# [SatNOGS Hardware](https://github.com/satnogs/satnogs-hardware)&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Arduino](https://github.com/satnogs/satnogs-arduino)&lt;br /&gt;
### Title&lt;br /&gt;
* **Description**: &lt;br /&gt;
* **Skills needed**: &lt;br /&gt;
* **Expected results**: &lt;br /&gt;
* **Mentor**: &lt;br /&gt;
&lt;br /&gt;
### Title&lt;br /&gt;
* **Description**: &lt;br /&gt;
* **Skills needed**: &lt;br /&gt;
* **Expected results**: &lt;br /&gt;
* **Mentor**:&lt;br /&gt;
&lt;br /&gt;
[[Category:SOC]]&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=Socis_2015_ideas&amp;diff=1679</id>
		<title>Socis 2015 ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=Socis_2015_ideas&amp;diff=1679"/>
		<updated>2017-08-29T10:20:16Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: add markdown tag&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MARKDOWN}}&lt;br /&gt;
&lt;br /&gt;
These ideas were contributed by our developers and users. Some of them may be rough. If you wish to submit a proposal based on  these ideas, you may wish to contact the developers and find out more  about the particular suggestion you're looking at. Students are welcome to provide their own ideas for projects in collaboration with the SatNOGS developer community.&lt;br /&gt;
&lt;br /&gt;
The major communication and coordination systems of the SatNOGS project are it's [forum](http://community.satnogs.org) and it's [github repositories](http://github.com/satnogs). All interested students must apply their proposals at info@satnogs.org if selected they will be assigned two mentors (a primary and alternative mentor).&lt;br /&gt;
&lt;br /&gt;
ESA SOCIS summer of code is an European Space Agency initiative, we encourage every party interested to visit it's [website](http://sophia.estec.esa.int/socis) and read it's [FAQ](http://sophia.estec.esa.int/socis/faq) &lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
# Software Projects&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Network](https://github.com/satnogs/satnogs-network)&lt;br /&gt;
### Data Dashboards using SatNOGS observation data/metadata&lt;br /&gt;
* **Description** Supply an overview of the observation data/metadata collected instead of the detailed view currently available &lt;br /&gt;
* **Skills needed** Django/Python , HTML, CSS3, Javascript&lt;br /&gt;
* **Expected results** Create  standards based user facing dashboards for SatNOGS recorded data and  metadata to provide an overview of a SatNOGS observation.&lt;br /&gt;
&lt;br /&gt;
### Concatenate observational data&lt;br /&gt;
* **Description**: An observer should be able to access a concatenated view of an observation that is calculated (and compiled) by multiple data from different ground stations. Still SatNOGS Network must be able to provide a single url page for a single observation part (ie by one ground station pass).&lt;br /&gt;
* **Skills needed**: Django/Python, HTML, CSS3, Javascript.&lt;br /&gt;
* **Expected results**: Single URL for a single observation part to allow sharing of data, page must be accessible in all modern browsers&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS DB](https://github.com/satnogs/satnogs-db)&lt;br /&gt;
### Transition our proof of concept SatNOGS DB to a working product.&lt;br /&gt;
* **Description** Design and assist implementing a transition of the SatNOGS DB project from a working prototype to a product&lt;br /&gt;
* **Skills needed** Angular.js CouchDB&lt;br /&gt;
* **Expected results** SatNOGS DB must be able to accept data from crowd-sourcing and expose them in an API.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
### Connect SatNOGS network to DB to get up-to-date transponder information.&lt;br /&gt;
* **Description**: Design, and implement a SatNOGS Network to SatNOGS DB connection (via an open API) to populate SatNOGS Network with up to date transponder information and SatNOGS DB with up to date tle satellite listings.&lt;br /&gt;
* **Skills needed**: Django, AngularDB&lt;br /&gt;
* **Expected results**: SatNOGS DB must be able to populate SatNOGS Network with all transponder data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Client](https://github.com/satnogs/satnogs-client)&lt;br /&gt;
### Build a web based controller able to control the SatNOGS client&lt;br /&gt;
* **Description**: Build a web based controller to allow users to connect to the SatNOGS client using a browser without the need to connect to the internet.&lt;br /&gt;
* **Skills needed**: HTML5, OpenWRT, JS, CSS3&lt;br /&gt;
* **Expected results**: An embeddable web application able to control SatNOGS client via a web browser&lt;br /&gt;
&lt;br /&gt;
### Package SatNOGS client for different distributions&lt;br /&gt;
* **Description**: SatNOGS client must be available in a binary package form for several distributions to further it's ease of modularity.&lt;br /&gt;
* **Skills needed**: Packaging on major distributions.&lt;br /&gt;
* **Expected results**: Released and submitted upstream packages on major distributions.&lt;br /&gt;
&lt;br /&gt;
## SatNOGS Infrastructure&lt;br /&gt;
### Improve logging and monitoring&lt;br /&gt;
* **Description**: Improve SatNOGS logging and monitoring capabilities to allow SatNOGS Network to monitor which ground station are operating properly&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: Logs and Monitoring capabilities for the Network administrators&lt;br /&gt;
&lt;br /&gt;
### Improve distributed storage of observation data&lt;br /&gt;
* **Description**: SatNOGS observation data must be able to be stored in a distributed manner&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: A distributed storage option for observation data&lt;br /&gt;
&lt;br /&gt;
### Add error rate and karma policies for SatNOGS clients&lt;br /&gt;
* **Description**:  SatNOGS clients should be able to use error rate and karma policies in order to prioritize observation jobs.&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: Error and karma policies applied to observation job prioritization&lt;br /&gt;
&lt;br /&gt;
### Docker-ise SatNOGS setup (for both client and network)&lt;br /&gt;
* **Description**: To provide a streamlined setup process for interested parties a Docker image for SatNOGS client and SatNOGS network should be created.&lt;br /&gt;
* **Skills needed**: Docker, Python&lt;br /&gt;
* **Expected results**: Fully functional Docker images for SatNOGS Client Network.&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
# [SatNOGS Hardware](https://github.com/satnogs/satnogs-hardware)&lt;br /&gt;
&lt;br /&gt;
## SatNOGS RF components&lt;br /&gt;
### LNA design&lt;br /&gt;
* **Description**: Design a Low Noise Amplifier to specifically cover the needs of satellite data coverage. VHF, UHF and S-Band should be covered.&lt;br /&gt;
* **Skills needed**: RF Electronics design. Filter design, signal theory.&lt;br /&gt;
* **Expected results**: Schematic, routing, board design and preferably a sample implementation.&lt;br /&gt;
&lt;br /&gt;
### Diplexer design&lt;br /&gt;
* **Description**: Design a Diplexer to specifically cover the need of the SatNOGS Ground Station&lt;br /&gt;
* **Skills needed**: RF Electronics design. Filter design, signal theory.&lt;br /&gt;
* **Expected results**: Schematic, routing, board design and preferably a a working prototype.&lt;br /&gt;
&lt;br /&gt;
### Polarization switching design for Uda-Yagi antennas&lt;br /&gt;
* **Description**: Create a polarization switching design to allow cross Uda-Yagi antenna configuration to switch polarization on the fly.&lt;br /&gt;
* **Skills needed**: RF Electronics design. Antenna design, signal theory.&lt;br /&gt;
* **Expected results**: Schematic, routing, board design and preferably a a working prototype.&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Arduino](https://github.com/satnogs/satnogs-arduino)&lt;br /&gt;
&lt;br /&gt;
### Closed loop system with feedback (encoders, stepper motors)&lt;br /&gt;
* **Description**: Design a closed loop system with positioning feedback, based on the existing tracker design, as an alternative to the current setup.&lt;br /&gt;
* **Skills needed**: Electronics, Arduino, PID tuning, Encoder circuits&lt;br /&gt;
* **Expected results**: Schematic, routing, board design, Arduino software that implements it and preferably a working prototype.&lt;br /&gt;
&lt;br /&gt;
### Design and implement a stand alone open source stepper controller&lt;br /&gt;
* **Description**: Create a stand alone open source stepper controller to modularize our electronics. Use an established protocol to communicate with our microprocessor (e.g. I2C).&lt;br /&gt;
* **Skills needed**: Electronics, Arduino, Stepper controllers, I2C ,SPI or 1Wire&lt;br /&gt;
* **Expected results**: Schematic, routing, board design, Arduino software that implements it and preferably a working prototype.&lt;br /&gt;
&lt;br /&gt;
### Arduino Firmware restructure with tests and fixes&lt;br /&gt;
* **Description**: Rewriting the current Arduino firmware to resolve overflow errors and implement tests for extreme conditions and use cases.&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Embedded debugging, Algorithm Design&lt;br /&gt;
* **Expected results**: A new Arduino firmware with less function overflow errors compared to the current and tests.&lt;br /&gt;
&lt;br /&gt;
### Implement or extend rotor control protocols in order to handle additional commands and errors&lt;br /&gt;
* **Description**: Additional errors and commands should be implemented to the current control protocols used in Easycomm2 and rotctrl&lt;br /&gt;
* **Skills needed**: Serial communications, Arduino, Embedded programming, Embedded debugging&lt;br /&gt;
* **Expected results**: Implementing or extending  rotor control protocols which will handle addition commands and errors.&lt;br /&gt;
&lt;br /&gt;
### Optimize rotor movement algorithm&lt;br /&gt;
* **Description**: Implement an improved and optimized rotor movement algorithm, to minimize path (length and time), apply tracking continuity (on extreme points) and apply instrumental limitations (cable twisting, horizon limits, extreme points, extreme conditions)&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Algorithm Design&lt;br /&gt;
* **Expected results**: Arduino code that implements the use cases on description.&lt;br /&gt;
&lt;br /&gt;
### Homing and setup bootstrap functions, testing functions&lt;br /&gt;
* **Description**: Design and implement a setup bootstrapping (first-run) and testing of ground station suite.&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Algorithm Design&lt;br /&gt;
* **Expected results**: Arduino code that implements the use cases on description.&lt;br /&gt;
&lt;br /&gt;
[[Category:SOC]]&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=Repositories_Policy&amp;diff=1678</id>
		<title>Repositories Policy</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=Repositories_Policy&amp;diff=1678"/>
		<updated>2017-08-29T10:19:44Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: add markdown tag&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MARKDOWN}}&lt;br /&gt;
&lt;br /&gt;
Intro&lt;br /&gt;
-----&lt;br /&gt;
SatNOGS uses GitHub for code, hardware, designs and issues repositories around the project. Each repository has a main and a co- maintainer who are ultimately responsible for committing code, versioning, accepting pull requests, triaging issues and generally owning the repo.&lt;br /&gt;
&lt;br /&gt;
Naming&lt;br /&gt;
---------&lt;br /&gt;
Any repo originating from SatNOGS project is named using `satnogs-&amp;lt;name&amp;gt;` (e.g. `satnogs-rotator`). We also maintain forks of other projects retaining their original names (e.g. `rtl-sdr`)&lt;br /&gt;
&lt;br /&gt;
Versioning&lt;br /&gt;
------------&lt;br /&gt;
Most **hardware** repos will be following this scheme: &lt;br /&gt;
&lt;br /&gt;
 - `master` is for current dev work.&lt;br /&gt;
 - major versions will be branched out of `master` with major version number (e.g. `v2`).&lt;br /&gt;
 - minor versions will be tags (e.g. `v2.1`).&lt;br /&gt;
&lt;br /&gt;
All **software** repos are following this scheme: &lt;br /&gt;
&lt;br /&gt;
- `master` reflects the production-ready state of the code.&lt;br /&gt;
- `dev` reflects the latest development code changes. This is the default merge target for Pull Requests.&lt;br /&gt;
- featured branches are created for development (e.g. `feature-add-single-view`),&lt;br /&gt;
- tags will be created for major revisions that we want to point to (e.g. `v3`).&lt;br /&gt;
&lt;br /&gt;
Some repos (minority, like `satnogs-antennas`) will be following a folders-based versioning as it fits more their development scheme. (sorry git lovers!)&lt;br /&gt;
&lt;br /&gt;
List of repos with descriptions and maintainers&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
- [`satnogs-rotator`](https://github.com/satnogs/satnogs-rotator)&lt;br /&gt;
 - *Description*: Designs for SatNOGS Rotator&lt;br /&gt;
 - *Maintainer*: Manthos Papamatthaiou &lt;br /&gt;
 - *Co-maintainer*: Agis Zisimatos &lt;br /&gt;
- [`satnogs-rotator-controller`](https://github.com/satnogs/satnogs-rotator-controller)&lt;br /&gt;
 - *Description*: Electronics for SatNOGS Rotator&lt;br /&gt;
 - *Maintainer*: Agis Zisimatos  &lt;br /&gt;
 - *Co-maintainer*: Manthos Papamatthaiou   &lt;br /&gt;
- [`satnogs-docs`](https://github.com/satnogs/satnogs-docs)&lt;br /&gt;
 - *Description*: Documentation for SatNOGS software projects&lt;br /&gt;
 - *Maintainer*: John Nemo Giannelos  &lt;br /&gt;
 - *Co-maintainer*: Nikos Roussos &lt;br /&gt;
- [`satnogs-software`](https://github.com/satnogs/satnogs-software)&lt;br /&gt;
 - *Description*: Various Software used in SatNOGS project&lt;br /&gt;
 - *Maintainer*: Vasilis Tsiligiannis  &lt;br /&gt;
 - *Co-maintainer*: Ioannis Charitopoulos&lt;br /&gt;
- [`satnogs-org`](https://github.com/satnogs/satnogs-org)&lt;br /&gt;
 - *Description*: Repo for organizational purposes and assets&lt;br /&gt;
 - *Maintainer*: Pierros Papadeas &lt;br /&gt;
 - *Co-maintainer*: Papamathaiou Manthos&lt;br /&gt;
- [`satnogs-preso`](https://github.com/satnogs/satnogs-preso)&lt;br /&gt;
 - *Description*: Presentations about SatNOGS project&lt;br /&gt;
 - *Maintainer*: Pierros Papadeas &lt;br /&gt;
 - *Co-maintainer*: Eleytherios Kosmas  &lt;br /&gt;
- [`satnogs-antennas`](https://github.com/satnogs/satnogs-antennas)&lt;br /&gt;
 - *Description*: Designs for SatNOGS Antennas&lt;br /&gt;
 - *Maintainer*: Vasilis Tsiligiannis  &lt;br /&gt;
 - *Co-maintainer*: Dimitris Papadeas &lt;br /&gt;
- [`satnogs-diplexer`](https://github.com/satnogs/satnogs-diplexer)&lt;br /&gt;
 - *Description*: Designs and plans for SatNOGS Diplexer&lt;br /&gt;
 - *Maintainer*: Agis Zisimatos &lt;br /&gt;
 - *Co-maintainer*: Vasilis Tsiligiannis &lt;br /&gt;
- [`satnogs-tripod`](https://github.com/satnogs/satnogs-tripod)&lt;br /&gt;
 - *Description*: Designs for SatNOGS Tripod&lt;br /&gt;
 - *Maintainer*: Dimitris Papadeas &lt;br /&gt;
 - *Co-maintainer*: Pierros Papadeas &lt;br /&gt;
- [`satnogs-radome`](https://github.com/satnogs/satnogs-radome)&lt;br /&gt;
 - *Description*: Designs for SatNOGS Radome&lt;br /&gt;
 - *Maintainer*: Dimitris Papadeas &lt;br /&gt;
 - *Co-maintainer*: Pierros Papadeas &lt;br /&gt;
- [`satnogs-client`](https://github.com/satnogs/satnogs-client)&lt;br /&gt;
 - *Description*: Software for SatNOGS Client&lt;br /&gt;
 - *Maintainer*: John Nemo Giannelos   &lt;br /&gt;
 - *Co-maintainer*: Ioannis Charitopoulos &lt;br /&gt;
- [`satnogs-ansible`](https://github.com/satnogs/satnogs-ansible)&lt;br /&gt;
 - *Description*: Ansible recipes and templates for our infrastructure setup&lt;br /&gt;
 - *Maintainer*: Nikos Roussos &lt;br /&gt;
 - *Co-maintainer*: Axilleas Pipinellis   &lt;br /&gt;
- [`satnogs-network`](https://github.com/satnogs/satnogs-network)&lt;br /&gt;
 - *Description*: Software for SatNOGS Network&lt;br /&gt;
 - *Maintainer*: Nikos Roussos  &lt;br /&gt;
 - *Co-maintainer*: John Nemo Giannelos  &lt;br /&gt;
- [`satnogs-db`](https://github.com/satnogs/satnogs-db)&lt;br /&gt;
 - *Description*: Software for SatNOGS DB&lt;br /&gt;
 - *Maintainer*: Nikos Roussos  &lt;br /&gt;
 - *Co-maintainer*: John Nemo Giannelos&lt;br /&gt;
- [`satnogs-rotator`](https://github.com/satnogs/satnogs-rotator)&lt;br /&gt;
 - *Description*: Designs and plans for SatNOGS Rotator&lt;br /&gt;
 - *Maintainer*: Manthos Papamatthaiou&lt;br /&gt;
 - *Co-maintainer*: Agis Zisimatos &lt;br /&gt;
- [`upscuits`](https://github.com/satnogs/upscuits)&lt;br /&gt;
 - *Description*: Our service monitoring site&lt;br /&gt;
 - *Maintainer*: Pierros Papadeas  &lt;br /&gt;
 - *Co-maintainer*: Axilleas Pipinellis  &lt;br /&gt;
- [`rtl-sdr`](https://github.com/satnogs/rtl-sdr)&lt;br /&gt;
 - *Description*: SatNOGS maintained rtl-sdr fork&lt;br /&gt;
 - *Maintainer*: Vasilis Tsiligiannis  &lt;br /&gt;
 - *Co-maintainer*: none&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=Repositories_Policy&amp;diff=1677</id>
		<title>Repositories Policy</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=Repositories_Policy&amp;diff=1677"/>
		<updated>2017-08-26T13:54:31Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Repositories Policy&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Intro&lt;br /&gt;
-----&lt;br /&gt;
SatNOGS uses GitHub for code, hardware, designs and issues repositories around the project. Each repository has a main and a co- maintainer who are ultimately responsible for committing code, versioning, accepting pull requests, triaging issues and generally owning the repo.&lt;br /&gt;
&lt;br /&gt;
Naming&lt;br /&gt;
---------&lt;br /&gt;
Any repo originating from SatNOGS project is named using `satnogs-&amp;lt;name&amp;gt;` (e.g. `satnogs-rotator`). We also maintain forks of other projects retaining their original names (e.g. `rtl-sdr`)&lt;br /&gt;
&lt;br /&gt;
Versioning&lt;br /&gt;
------------&lt;br /&gt;
Most **hardware** repos will be following this scheme: &lt;br /&gt;
&lt;br /&gt;
 - `master` is for current dev work.&lt;br /&gt;
 - major versions will be branched out of `master` with major version number (e.g. `v2`).&lt;br /&gt;
 - minor versions will be tags (e.g. `v2.1`).&lt;br /&gt;
&lt;br /&gt;
All **software** repos are following this scheme: &lt;br /&gt;
&lt;br /&gt;
- `master` reflects the production-ready state of the code.&lt;br /&gt;
- `dev` reflects the latest development code changes. This is the default merge target for Pull Requests.&lt;br /&gt;
- featured branches are created for development (e.g. `feature-add-single-view`),&lt;br /&gt;
- tags will be created for major revisions that we want to point to (e.g. `v3`).&lt;br /&gt;
&lt;br /&gt;
Some repos (minority, like `satnogs-antennas`) will be following a folders-based versioning as it fits more their development scheme. (sorry git lovers!)&lt;br /&gt;
&lt;br /&gt;
List of repos with descriptions and maintainers&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
- [`satnogs-rotator`](https://github.com/satnogs/satnogs-rotator)&lt;br /&gt;
 - *Description*: Designs for SatNOGS Rotator&lt;br /&gt;
 - *Maintainer*: Manthos Papamatthaiou &lt;br /&gt;
 - *Co-maintainer*: Agis Zisimatos &lt;br /&gt;
- [`satnogs-rotator-controller`](https://github.com/satnogs/satnogs-rotator-controller)&lt;br /&gt;
 - *Description*: Electronics for SatNOGS Rotator&lt;br /&gt;
 - *Maintainer*: Agis Zisimatos  &lt;br /&gt;
 - *Co-maintainer*: Manthos Papamatthaiou   &lt;br /&gt;
- [`satnogs-docs`](https://github.com/satnogs/satnogs-docs)&lt;br /&gt;
 - *Description*: Documentation for SatNOGS software projects&lt;br /&gt;
 - *Maintainer*: John Nemo Giannelos  &lt;br /&gt;
 - *Co-maintainer*: Nikos Roussos &lt;br /&gt;
- [`satnogs-software`](https://github.com/satnogs/satnogs-software)&lt;br /&gt;
 - *Description*: Various Software used in SatNOGS project&lt;br /&gt;
 - *Maintainer*: Vasilis Tsiligiannis  &lt;br /&gt;
 - *Co-maintainer*: Ioannis Charitopoulos&lt;br /&gt;
- [`satnogs-org`](https://github.com/satnogs/satnogs-org)&lt;br /&gt;
 - *Description*: Repo for organizational purposes and assets&lt;br /&gt;
 - *Maintainer*: Pierros Papadeas &lt;br /&gt;
 - *Co-maintainer*: Papamathaiou Manthos&lt;br /&gt;
- [`satnogs-preso`](https://github.com/satnogs/satnogs-preso)&lt;br /&gt;
 - *Description*: Presentations about SatNOGS project&lt;br /&gt;
 - *Maintainer*: Pierros Papadeas &lt;br /&gt;
 - *Co-maintainer*: Eleytherios Kosmas  &lt;br /&gt;
- [`satnogs-antennas`](https://github.com/satnogs/satnogs-antennas)&lt;br /&gt;
 - *Description*: Designs for SatNOGS Antennas&lt;br /&gt;
 - *Maintainer*: Vasilis Tsiligiannis  &lt;br /&gt;
 - *Co-maintainer*: Dimitris Papadeas &lt;br /&gt;
- [`satnogs-diplexer`](https://github.com/satnogs/satnogs-diplexer)&lt;br /&gt;
 - *Description*: Designs and plans for SatNOGS Diplexer&lt;br /&gt;
 - *Maintainer*: Agis Zisimatos &lt;br /&gt;
 - *Co-maintainer*: Vasilis Tsiligiannis &lt;br /&gt;
- [`satnogs-tripod`](https://github.com/satnogs/satnogs-tripod)&lt;br /&gt;
 - *Description*: Designs for SatNOGS Tripod&lt;br /&gt;
 - *Maintainer*: Dimitris Papadeas &lt;br /&gt;
 - *Co-maintainer*: Pierros Papadeas &lt;br /&gt;
- [`satnogs-radome`](https://github.com/satnogs/satnogs-radome)&lt;br /&gt;
 - *Description*: Designs for SatNOGS Radome&lt;br /&gt;
 - *Maintainer*: Dimitris Papadeas &lt;br /&gt;
 - *Co-maintainer*: Pierros Papadeas &lt;br /&gt;
- [`satnogs-client`](https://github.com/satnogs/satnogs-client)&lt;br /&gt;
 - *Description*: Software for SatNOGS Client&lt;br /&gt;
 - *Maintainer*: John Nemo Giannelos   &lt;br /&gt;
 - *Co-maintainer*: Ioannis Charitopoulos &lt;br /&gt;
- [`satnogs-ansible`](https://github.com/satnogs/satnogs-ansible)&lt;br /&gt;
 - *Description*: Ansible recipes and templates for our infrastructure setup&lt;br /&gt;
 - *Maintainer*: Nikos Roussos &lt;br /&gt;
 - *Co-maintainer*: Axilleas Pipinellis   &lt;br /&gt;
- [`satnogs-network`](https://github.com/satnogs/satnogs-network)&lt;br /&gt;
 - *Description*: Software for SatNOGS Network&lt;br /&gt;
 - *Maintainer*: Nikos Roussos  &lt;br /&gt;
 - *Co-maintainer*: John Nemo Giannelos  &lt;br /&gt;
- [`satnogs-db`](https://github.com/satnogs/satnogs-db)&lt;br /&gt;
 - *Description*: Software for SatNOGS DB&lt;br /&gt;
 - *Maintainer*: Nikos Roussos  &lt;br /&gt;
 - *Co-maintainer*: John Nemo Giannelos&lt;br /&gt;
- [`satnogs-rotator`](https://github.com/satnogs/satnogs-rotator)&lt;br /&gt;
 - *Description*: Designs and plans for SatNOGS Rotator&lt;br /&gt;
 - *Maintainer*: Manthos Papamatthaiou&lt;br /&gt;
 - *Co-maintainer*: Agis Zisimatos &lt;br /&gt;
- [`upscuits`](https://github.com/satnogs/upscuits)&lt;br /&gt;
 - *Description*: Our service monitoring site&lt;br /&gt;
 - *Maintainer*: Pierros Papadeas  &lt;br /&gt;
 - *Co-maintainer*: Axilleas Pipinellis  &lt;br /&gt;
- [`rtl-sdr`](https://github.com/satnogs/rtl-sdr)&lt;br /&gt;
 - *Description*: SatNOGS maintained rtl-sdr fork&lt;br /&gt;
 - *Maintainer*: Vasilis Tsiligiannis  &lt;br /&gt;
 - *Co-maintainer*: none&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=Category:SOC&amp;diff=1676</id>
		<title>Category:SOC</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=Category:SOC&amp;diff=1676"/>
		<updated>2017-08-26T13:53:30Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Created page with &amp;quot;Ideas for various &amp;quot;Summer of Code&amp;quot; programs&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ideas for various &amp;quot;Summer of Code&amp;quot; programs&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=Socis_2016_ideas&amp;diff=1675</id>
		<title>Socis 2016 ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=Socis_2016_ideas&amp;diff=1675"/>
		<updated>2017-08-26T13:52:50Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Socis 2016 ideas&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;These ideas were contributed by our developers and users for SOCIS 2016. Some of them may be rough. If you wish to submit a proposal based on  these ideas, you may wish to contact the developers and find out more  about the particular suggestion you're looking at. Students are welcome to provide their own ideas for projects in collaboration with the SatNOGS developer community.&lt;br /&gt;
&lt;br /&gt;
The major communication and coordination systems of the SatNOGS project are it's [forum](http://community.satnogs.org) and it's [github repositories](http://github.com/satnogs).&lt;br /&gt;
&lt;br /&gt;
ESA SOCIS summer of code is an European Space Agency initiative, we encourage every party interested to visit it's [website](http://sophia.estec.esa.int/socis) and read it's [FAQ](http://sophia.estec.esa.int/socis/faq) &lt;br /&gt;
&lt;br /&gt;
Instructions&lt;br /&gt;
====&lt;br /&gt;
Students wishing to participate in SOCIS must realise this is more than a mere formality. You will be required to produce code for Libre Space Foundation projects in 3 months.&lt;br /&gt;
&lt;br /&gt;
You don't have to be a proven developer -- in fact, this whole program is meant to facilitate joining  Open Source communities. However, experience in coding and/or experience with Python libraries and applications is welcome.&lt;br /&gt;
&lt;br /&gt;
You should start familiarizing yourself with the components that you plan on working on before the start date. LSF developers are available on the community site and on IRC for help.&lt;br /&gt;
Recommended steps&lt;br /&gt;
=====&lt;br /&gt;
 * Read ESA's instructions for participating&lt;br /&gt;
 * Take a look at the list of ideas&lt;br /&gt;
 * Come up with project that you're interested in&lt;br /&gt;
 * Write a first draft proposal and get someone to review it for you&lt;br /&gt;
 * Submit it using Google's web interface &lt;br /&gt;
&lt;br /&gt;
Coming up with an interesting idea is probably the most difficult part of all. It should be something interesting for **SatNOGS**, for **Open Source in Space** and particularly for **you**.&lt;br /&gt;
&lt;br /&gt;
Finding out what the most pressing issues are in the projects you're interested in is a good start.Learning the codebase and even submitting issues and identifying bugs is also a good way to start. We recommend strongly doing that and we will look favorably on applications from students who have started to act like Open Source developers.&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
# Software Projects&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Network](https://github.com/satnogs/satnogs-network)&lt;br /&gt;
### Data Dashboards using SatNOGS observation data/metadata&lt;br /&gt;
* **Description** Supply an overview of the observation data/metadata collected instead of the detailed view currently available &lt;br /&gt;
* **Skills needed** Django/Python , HTML, CSS3, Javascript&lt;br /&gt;
* **Expected results** Create standards based user facing dashboards for SatNOGS recorded data and metadata to provide an overview of a SatNOGS observation.&lt;br /&gt;
* **Mentor**: @comzeradd&lt;br /&gt;
&lt;br /&gt;
### Concatenate observational data&lt;br /&gt;
* **Description**: An observer should be able to access a concatenated view of an observation that is calculated (and compiled) by multiple data from different ground stations. Still SatNOGS Network must be able to provide a single url page for a single observation part (ie by one ground station pass).&lt;br /&gt;
* **Skills needed**: Django/Python, HTML, CSS3, Javascript.&lt;br /&gt;
* **Expected results**: Single URL for a single observation part to allow sharing of data, page must be accessible in all modern browsers&lt;br /&gt;
* **Mentor**: @comzeradd&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Client](https://github.com/satnogs/satnogs-client)&lt;br /&gt;
### Build a web based controller able to control the SatNOGS client&lt;br /&gt;
* **Description**: Expand the current web interface of satnogs-client with a web based controller to allow users to connect to their rotator using a browser without the need to connect to the internet.&lt;br /&gt;
* **Skills needed**: Python, Flask&lt;br /&gt;
* **Expected results**: An embeddable web application able to control SatNOGS client via a web browser&lt;br /&gt;
* **Mentor**: @jinxcat&lt;br /&gt;
&lt;br /&gt;
### Package SatNOGS client for different distributions&lt;br /&gt;
* **Description**: SatNOGS client must be available in a binary package form for several distributions to further it's ease of modularity.&lt;br /&gt;
* **Skills needed**: Packaging on major distributions.&lt;br /&gt;
* **Expected results**: Released and submitted upstream packages on major distributions.&lt;br /&gt;
* **Mentor**: @axilleas&lt;br /&gt;
&lt;br /&gt;
## SatNOGS Infrastructure&lt;br /&gt;
### Improve logging and monitoring&lt;br /&gt;
* **Description**: Improve SatNOGS logging and monitoring capabilities to allow SatNOGS Network to monitor which ground station are operating properly&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: Logs and Monitoring capabilities for the Network administrators&lt;br /&gt;
* **Mentor**: @axilleas&lt;br /&gt;
&lt;br /&gt;
### Improve distributed storage of observation data&lt;br /&gt;
* **Description**: SatNOGS observation data must be able to be stored in a distributed manner&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: A distributed storage option for observation data&lt;br /&gt;
* **Mentor**: @jinxcat&lt;br /&gt;
&lt;br /&gt;
### Add error rate and karma policies for SatNOGS clients&lt;br /&gt;
* **Description**:  SatNOGS clients should be able to use error rate and karma policies in order to prioritize observation jobs.&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: Error and karma policies applied to observation job prioritization&lt;br /&gt;
* **Mentor**: @jinxcat&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
# [SatNOGS Hardware](https://github.com/satnogs/satnogs-hardware)&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Arduino](https://github.com/satnogs/satnogs-arduino)&lt;br /&gt;
&lt;br /&gt;
### Closed loop system with feedback (encoders, stepper motors)&lt;br /&gt;
* **Description**: Design a closed loop system with positioning feedback, based on the existing tracker design, as an alternative to the current setup.&lt;br /&gt;
* **Skills needed**: Electronics, Arduino, PID tuning, Encoder circuits&lt;br /&gt;
* **Expected results**: Schematic, routing, board design, Arduino software that implements it and preferably a working prototype.&lt;br /&gt;
* **Mentor**: @zisi&lt;br /&gt;
&lt;br /&gt;
### Design and implement a stand alone open source stepper controller&lt;br /&gt;
* **Description**: Create a stand alone open source stepper controller to modularize our electronics. Use an established protocol to communicate with our microprocessor (e.g. I2C).&lt;br /&gt;
* **Skills needed**: Electronics, Arduino, Stepper controllers, I2C ,SPI or 1Wire&lt;br /&gt;
* **Expected results**: Schematic, routing, board design, Arduino software that implements it and preferably a working prototype.&lt;br /&gt;
* **Mentor**: @zisi&lt;br /&gt;
&lt;br /&gt;
### Arduino Firmware restructure with tests and fixes&lt;br /&gt;
* **Description**: Rewriting the current Arduino firmware to resolve overflow errors and implement tests for extreme conditions and use cases.&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Embedded debugging, Algorithm Design&lt;br /&gt;
* **Expected results**: A new Arduino firmware with less function overflow errors compared to the current and tests.&lt;br /&gt;
* **Mentor**: @zisi&lt;br /&gt;
&lt;br /&gt;
### Optimize rotor movement algorithm&lt;br /&gt;
* **Description**: Implement an improved and optimized rotor movement algorithm, to minimize path (length and time), apply tracking continuity (on extreme points) and apply instrumental limitations (cable twisting, horizon limits, extreme points, extreme conditions)&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Algorithm Design&lt;br /&gt;
* **Expected results**: Arduino code that implements the use cases on description.&lt;br /&gt;
* **Mentor**: @papamat&lt;br /&gt;
&lt;br /&gt;
### Homing and setup bootstrap functions, testing functions&lt;br /&gt;
* **Description**: Design and implement a setup bootstrapping (first-run) and testing of ground station suite.&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Algorithm Design&lt;br /&gt;
* **Expected results**: Arduino code that implements the use cases on description.&lt;br /&gt;
* **Mentor**: @zisi&lt;br /&gt;
&lt;br /&gt;
[[Category:SOC]]&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=Socis_2015_ideas&amp;diff=1674</id>
		<title>Socis 2015 ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=Socis_2015_ideas&amp;diff=1674"/>
		<updated>2017-08-26T13:52:08Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Socis 2015 ideas&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;These ideas were contributed by our developers and users. Some of them may be rough. If you wish to submit a proposal based on  these ideas, you may wish to contact the developers and find out more  about the particular suggestion you're looking at. Students are welcome to provide their own ideas for projects in collaboration with the SatNOGS developer community.&lt;br /&gt;
&lt;br /&gt;
The major communication and coordination systems of the SatNOGS project are it's [forum](http://community.satnogs.org) and it's [github repositories](http://github.com/satnogs). All interested students must apply their proposals at info@satnogs.org if selected they will be assigned two mentors (a primary and alternative mentor).&lt;br /&gt;
&lt;br /&gt;
ESA SOCIS summer of code is an European Space Agency initiative, we encourage every party interested to visit it's [website](http://sophia.estec.esa.int/socis) and read it's [FAQ](http://sophia.estec.esa.int/socis/faq) &lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
# Software Projects&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Network](https://github.com/satnogs/satnogs-network)&lt;br /&gt;
### Data Dashboards using SatNOGS observation data/metadata&lt;br /&gt;
* **Description** Supply an overview of the observation data/metadata collected instead of the detailed view currently available &lt;br /&gt;
* **Skills needed** Django/Python , HTML, CSS3, Javascript&lt;br /&gt;
* **Expected results** Create  standards based user facing dashboards for SatNOGS recorded data and  metadata to provide an overview of a SatNOGS observation.&lt;br /&gt;
&lt;br /&gt;
### Concatenate observational data&lt;br /&gt;
* **Description**: An observer should be able to access a concatenated view of an observation that is calculated (and compiled) by multiple data from different ground stations. Still SatNOGS Network must be able to provide a single url page for a single observation part (ie by one ground station pass).&lt;br /&gt;
* **Skills needed**: Django/Python, HTML, CSS3, Javascript.&lt;br /&gt;
* **Expected results**: Single URL for a single observation part to allow sharing of data, page must be accessible in all modern browsers&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS DB](https://github.com/satnogs/satnogs-db)&lt;br /&gt;
### Transition our proof of concept SatNOGS DB to a working product.&lt;br /&gt;
* **Description** Design and assist implementing a transition of the SatNOGS DB project from a working prototype to a product&lt;br /&gt;
* **Skills needed** Angular.js CouchDB&lt;br /&gt;
* **Expected results** SatNOGS DB must be able to accept data from crowd-sourcing and expose them in an API.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
### Connect SatNOGS network to DB to get up-to-date transponder information.&lt;br /&gt;
* **Description**: Design, and implement a SatNOGS Network to SatNOGS DB connection (via an open API) to populate SatNOGS Network with up to date transponder information and SatNOGS DB with up to date tle satellite listings.&lt;br /&gt;
* **Skills needed**: Django, AngularDB&lt;br /&gt;
* **Expected results**: SatNOGS DB must be able to populate SatNOGS Network with all transponder data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Client](https://github.com/satnogs/satnogs-client)&lt;br /&gt;
### Build a web based controller able to control the SatNOGS client&lt;br /&gt;
* **Description**: Build a web based controller to allow users to connect to the SatNOGS client using a browser without the need to connect to the internet.&lt;br /&gt;
* **Skills needed**: HTML5, OpenWRT, JS, CSS3&lt;br /&gt;
* **Expected results**: An embeddable web application able to control SatNOGS client via a web browser&lt;br /&gt;
&lt;br /&gt;
### Package SatNOGS client for different distributions&lt;br /&gt;
* **Description**: SatNOGS client must be available in a binary package form for several distributions to further it's ease of modularity.&lt;br /&gt;
* **Skills needed**: Packaging on major distributions.&lt;br /&gt;
* **Expected results**: Released and submitted upstream packages on major distributions.&lt;br /&gt;
&lt;br /&gt;
## SatNOGS Infrastructure&lt;br /&gt;
### Improve logging and monitoring&lt;br /&gt;
* **Description**: Improve SatNOGS logging and monitoring capabilities to allow SatNOGS Network to monitor which ground station are operating properly&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: Logs and Monitoring capabilities for the Network administrators&lt;br /&gt;
&lt;br /&gt;
### Improve distributed storage of observation data&lt;br /&gt;
* **Description**: SatNOGS observation data must be able to be stored in a distributed manner&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: A distributed storage option for observation data&lt;br /&gt;
&lt;br /&gt;
### Add error rate and karma policies for SatNOGS clients&lt;br /&gt;
* **Description**:  SatNOGS clients should be able to use error rate and karma policies in order to prioritize observation jobs.&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: Error and karma policies applied to observation job prioritization&lt;br /&gt;
&lt;br /&gt;
### Docker-ise SatNOGS setup (for both client and network)&lt;br /&gt;
* **Description**: To provide a streamlined setup process for interested parties a Docker image for SatNOGS client and SatNOGS network should be created.&lt;br /&gt;
* **Skills needed**: Docker, Python&lt;br /&gt;
* **Expected results**: Fully functional Docker images for SatNOGS Client Network.&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
# [SatNOGS Hardware](https://github.com/satnogs/satnogs-hardware)&lt;br /&gt;
&lt;br /&gt;
## SatNOGS RF components&lt;br /&gt;
### LNA design&lt;br /&gt;
* **Description**: Design a Low Noise Amplifier to specifically cover the needs of satellite data coverage. VHF, UHF and S-Band should be covered.&lt;br /&gt;
* **Skills needed**: RF Electronics design. Filter design, signal theory.&lt;br /&gt;
* **Expected results**: Schematic, routing, board design and preferably a sample implementation.&lt;br /&gt;
&lt;br /&gt;
### Diplexer design&lt;br /&gt;
* **Description**: Design a Diplexer to specifically cover the need of the SatNOGS Ground Station&lt;br /&gt;
* **Skills needed**: RF Electronics design. Filter design, signal theory.&lt;br /&gt;
* **Expected results**: Schematic, routing, board design and preferably a a working prototype.&lt;br /&gt;
&lt;br /&gt;
### Polarization switching design for Uda-Yagi antennas&lt;br /&gt;
* **Description**: Create a polarization switching design to allow cross Uda-Yagi antenna configuration to switch polarization on the fly.&lt;br /&gt;
* **Skills needed**: RF Electronics design. Antenna design, signal theory.&lt;br /&gt;
* **Expected results**: Schematic, routing, board design and preferably a a working prototype.&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Arduino](https://github.com/satnogs/satnogs-arduino)&lt;br /&gt;
&lt;br /&gt;
### Closed loop system with feedback (encoders, stepper motors)&lt;br /&gt;
* **Description**: Design a closed loop system with positioning feedback, based on the existing tracker design, as an alternative to the current setup.&lt;br /&gt;
* **Skills needed**: Electronics, Arduino, PID tuning, Encoder circuits&lt;br /&gt;
* **Expected results**: Schematic, routing, board design, Arduino software that implements it and preferably a working prototype.&lt;br /&gt;
&lt;br /&gt;
### Design and implement a stand alone open source stepper controller&lt;br /&gt;
* **Description**: Create a stand alone open source stepper controller to modularize our electronics. Use an established protocol to communicate with our microprocessor (e.g. I2C).&lt;br /&gt;
* **Skills needed**: Electronics, Arduino, Stepper controllers, I2C ,SPI or 1Wire&lt;br /&gt;
* **Expected results**: Schematic, routing, board design, Arduino software that implements it and preferably a working prototype.&lt;br /&gt;
&lt;br /&gt;
### Arduino Firmware restructure with tests and fixes&lt;br /&gt;
* **Description**: Rewriting the current Arduino firmware to resolve overflow errors and implement tests for extreme conditions and use cases.&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Embedded debugging, Algorithm Design&lt;br /&gt;
* **Expected results**: A new Arduino firmware with less function overflow errors compared to the current and tests.&lt;br /&gt;
&lt;br /&gt;
### Implement or extend rotor control protocols in order to handle additional commands and errors&lt;br /&gt;
* **Description**: Additional errors and commands should be implemented to the current control protocols used in Easycomm2 and rotctrl&lt;br /&gt;
* **Skills needed**: Serial communications, Arduino, Embedded programming, Embedded debugging&lt;br /&gt;
* **Expected results**: Implementing or extending  rotor control protocols which will handle addition commands and errors.&lt;br /&gt;
&lt;br /&gt;
### Optimize rotor movement algorithm&lt;br /&gt;
* **Description**: Implement an improved and optimized rotor movement algorithm, to minimize path (length and time), apply tracking continuity (on extreme points) and apply instrumental limitations (cable twisting, horizon limits, extreme points, extreme conditions)&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Algorithm Design&lt;br /&gt;
* **Expected results**: Arduino code that implements the use cases on description.&lt;br /&gt;
&lt;br /&gt;
### Homing and setup bootstrap functions, testing functions&lt;br /&gt;
* **Description**: Design and implement a setup bootstrapping (first-run) and testing of ground station suite.&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Algorithm Design&lt;br /&gt;
* **Expected results**: Arduino code that implements the use cases on description.&lt;br /&gt;
&lt;br /&gt;
[[Category:SOC]]&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=GSOC_2017_Ideas&amp;diff=1673</id>
		<title>GSOC 2017 Ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=GSOC_2017_Ideas&amp;diff=1673"/>
		<updated>2017-08-26T13:51:15Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: GSOC 2017 Ideas&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;These ideas were contributed by our developers and users for [Google Summer of Code 2017](https://summerofcode.withgoogle.com). Some of them may be in a rough state, but they can certainly be refined. If you wish to submit a proposal based on  these ideas, you may wish to contact the developers and find out more  about the particular suggestion you're looking at. Students are welcome to provide their own ideas for projects in collaboration with the SatNOGS developer community.&lt;br /&gt;
&lt;br /&gt;
The major communication and coordination systems of the SatNOGS project are its [forum](http://community.satnogs.org) and its [github repositories](http://github.com/satnogs).&lt;br /&gt;
&lt;br /&gt;
Instructions&lt;br /&gt;
====&lt;br /&gt;
Students wishing to participate in Summer of Code must realise this is more than a mere formality. You will be required to produce code for Libre Space Foundation projects in 3 months.&lt;br /&gt;
&lt;br /&gt;
You don't have to be a proven developer, in fact, this whole program is meant to facilitate joining  Open Source communities. However, experience in coding and/or experience with Python libraries and applications is welcome.&lt;br /&gt;
&lt;br /&gt;
You should start familiarizing yourself with the components that you plan on working on before the start date. LSF developers are available on the community site and on IRC for help.&lt;br /&gt;
&lt;br /&gt;
Recommended steps&lt;br /&gt;
=====&lt;br /&gt;
 * Read Google's instructions for participating&lt;br /&gt;
 * Take a look at the list of ideas&lt;br /&gt;
 * Come up with project that you're interested in&lt;br /&gt;
 * Write a first draft proposal and get someone to review it for you&lt;br /&gt;
 * Submit it using Google's web interface &lt;br /&gt;
&lt;br /&gt;
Check the KDE's [Student Proposal Guidelines](https://community.kde.org/GSoC#Student_proposal_guidelines) for more hints on what your application should look like. &lt;br /&gt;
&lt;br /&gt;
Coming up with an interesting idea is probably the most difficult part of all. It should be something interesting for **LSF**, for **Open Source in Space** and particularly for **you**.&lt;br /&gt;
&lt;br /&gt;
Finding out what the most pressing issues are in the projects you're interested in is a good start. Learning the codebase and even submitting issues and identifying bugs is also a good way to start. We recommend strongly doing that and we will look favorably on applications from students who have started to act like Open Source developers.&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
# Software Projects&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS DB](https://github.com/satnogs/satnogs-db)&lt;br /&gt;
### Enhance frontend suggestions and moderation capabilities&lt;br /&gt;
* **Description**: Supply the ability for users to suggest new satellites. Supply the ability to moderators to approve or amend satellite and transmitters suggestions.&lt;br /&gt;
* **Skills needed**: Django/Python , HTML, CSS3, Javascript&lt;br /&gt;
* **Expected results**: All satellite and transmitters data should be crowdsourced and moderated through a simple UI. &lt;br /&gt;
* **Mentor**: @comzeradd&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Client](https://github.com/satnogs/satnogs-client)&lt;br /&gt;
### Build a web based controller able to control the SatNOGS client&lt;br /&gt;
* **Description**: Expand the current web interface of satnogs-client with a web based controller to allow users to connect to their rotator using a browser without the need to connect to the internet.&lt;br /&gt;
* **Skills needed**: Python, Flask&lt;br /&gt;
* **Expected results**: An embeddable web application able to control SatNOGS client via a web browser&lt;br /&gt;
* **Mentor**: @jinxcat&lt;br /&gt;
&lt;br /&gt;
### Package SatNOGS client for different distributions&lt;br /&gt;
* **Description**: SatNOGS client must be available in a binary package form for several distributions to further it's ease of modularity.&lt;br /&gt;
* **Skills needed**: Packaging on major distributions.&lt;br /&gt;
* **Expected results**: Released and submitted upstream packages on major distributions.&lt;br /&gt;
* **Mentor**: @axilleas&lt;br /&gt;
&lt;br /&gt;
## SatNOGS Infrastructure&lt;br /&gt;
### Improve logging and monitoring&lt;br /&gt;
* **Description**: Improve SatNOGS logging and monitoring capabilities to allow SatNOGS Network to monitor which ground station are operating properly&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: Logs and Monitoring capabilities for the Network administrators&lt;br /&gt;
* **Mentor**: @axilleas&lt;br /&gt;
&lt;br /&gt;
### Improve distributed storage of observation data&lt;br /&gt;
* **Description**: SatNOGS observation data must be able to be stored in a distributed manner&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: A distributed storage option for observation data&lt;br /&gt;
* **Mentor**: @jinxcat&lt;br /&gt;
&lt;br /&gt;
### Add error rate and karma policies for SatNOGS clients&lt;br /&gt;
* **Description**: SatNOGS clients should be able to use error rate and karma policies in order to prioritize observation jobs.&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: Error and karma policies applied to observation job prioritization&lt;br /&gt;
* **Mentor**: @jinxcat&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
# [SatNOGS Hardware](https://github.com/satnogs/satnogs-hardware)&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Arduino](https://github.com/satnogs/satnogs-arduino)&lt;br /&gt;
### Title&lt;br /&gt;
* **Description**: &lt;br /&gt;
* **Skills needed**: &lt;br /&gt;
* **Expected results**: &lt;br /&gt;
* **Mentor**: &lt;br /&gt;
&lt;br /&gt;
### Title&lt;br /&gt;
* **Description**: &lt;br /&gt;
* **Skills needed**: &lt;br /&gt;
* **Expected results**: &lt;br /&gt;
* **Mentor**:&lt;br /&gt;
&lt;br /&gt;
[[Category:SOC]]&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=GSOC_2016_Ideas&amp;diff=1672</id>
		<title>GSOC 2016 Ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=GSOC_2016_Ideas&amp;diff=1672"/>
		<updated>2017-08-26T13:50:21Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: GSOC 2016 Ideas&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;These ideas were contributed by our developers and users for [Google Summer of Code 2016](https://summerofcode.withgoogle.com). Some of them may be rough. If you wish to submit a proposal based on  these ideas, you may wish to contact the developers and find out more  about the particular suggestion you're looking at. Students are welcome to provide their own ideas for projects in collaboration with the SatNOGS developer community.&lt;br /&gt;
&lt;br /&gt;
The major communication and coordination systems of the SatNOGS project are it's [forum](http://community.satnogs.org) and it's [github repositories](http://github.com/satnogs).&lt;br /&gt;
&lt;br /&gt;
Instructions&lt;br /&gt;
====&lt;br /&gt;
Students wishing to participate in Summer of Code must realise this is more than a mere formality. You will be required to produce code for Libre Space Foundation projects in 3 months.&lt;br /&gt;
&lt;br /&gt;
You don't have to be a proven developer -- in fact, this whole program is meant to facilitate joining  Open Source communities. However, experience in coding and/or experience with Python libraries and applications is welcome.&lt;br /&gt;
&lt;br /&gt;
You should start familiarizing yourself with the components that you plan on working on before the start date. LSF developers are available on the community site and on IRC for help.&lt;br /&gt;
Recommended steps&lt;br /&gt;
=====&lt;br /&gt;
 * Read Google's instructions for participating&lt;br /&gt;
 * Take a look at the list of ideas&lt;br /&gt;
 * Come up with project that you're interested in&lt;br /&gt;
 * Write a first draft proposal and get someone to review it for you&lt;br /&gt;
 * Submit it using Google's web interface &lt;br /&gt;
&lt;br /&gt;
Check the KDE's [Student Proposal Guidelines](https://community.kde.org/GSoC#Student_proposal_guidelines) for more hints on what your application should look like. &lt;br /&gt;
&lt;br /&gt;
Coming up with an interesting idea is probably the most difficult part of all. It should be something interesting for **LSF**, for **Open Source in Space** and particularly for **you**.&lt;br /&gt;
&lt;br /&gt;
Finding out what the most pressing issues are in the projects you're interested in is a good start.Learning the codebase and even submitting issues and identifying bugs is also a good way to start. We recommend strongly doing that and we will look favorably on applications from students who have started to act like Open Source developers.&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
# Software Projects&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Network](https://github.com/satnogs/satnogs-network)&lt;br /&gt;
### Data Dashboards using SatNOGS observation data/metadata&lt;br /&gt;
* **Description** Supply an overview of the observation data/metadata collected instead of the detailed view currently available &lt;br /&gt;
* **Skills needed** Django/Python , HTML, CSS3, Javascript&lt;br /&gt;
* **Expected results** Create standards based user facing dashboards for SatNOGS recorded data and metadata to provide an overview of a SatNOGS observation.&lt;br /&gt;
* **Mentor**: @comzeradd&lt;br /&gt;
&lt;br /&gt;
### Concatenate observational data&lt;br /&gt;
* **Description**: An observer should be able to access a concatenated view of an observation that is calculated (and compiled) by multiple data from different ground stations. Still SatNOGS Network must be able to provide a single url page for a single observation part (ie by one ground station pass).&lt;br /&gt;
* **Skills needed**: Django/Python, HTML, CSS3, Javascript.&lt;br /&gt;
* **Expected results**: Single URL for a single observation part to allow sharing of data, page must be accessible in all modern browsers&lt;br /&gt;
* **Mentor**: @comzeradd&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Client](https://github.com/satnogs/satnogs-client)&lt;br /&gt;
### Build a web based controller able to control the SatNOGS client&lt;br /&gt;
* **Description**: Expand the current web interface of satnogs-client with a web based controller to allow users to connect to their rotator using a browser without the need to connect to the internet.&lt;br /&gt;
* **Skills needed**: Python, Flask&lt;br /&gt;
* **Expected results**: An embeddable web application able to control SatNOGS client via a web browser&lt;br /&gt;
* **Mentor**: @jinxcat&lt;br /&gt;
&lt;br /&gt;
### Package SatNOGS client for different distributions&lt;br /&gt;
* **Description**: SatNOGS client must be available in a binary package form for several distributions to further it's ease of modularity.&lt;br /&gt;
* **Skills needed**: Packaging on major distributions.&lt;br /&gt;
* **Expected results**: Released and submitted upstream packages on major distributions.&lt;br /&gt;
* **Mentor**: @axilleas&lt;br /&gt;
&lt;br /&gt;
## SatNOGS Infrastructure&lt;br /&gt;
### Improve logging and monitoring&lt;br /&gt;
* **Description**: Improve SatNOGS logging and monitoring capabilities to allow SatNOGS Network to monitor which ground station are operating properly&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: Logs and Monitoring capabilities for the Network administrators&lt;br /&gt;
* **Mentor**: @axilleas&lt;br /&gt;
&lt;br /&gt;
### Improve distributed storage of observation data&lt;br /&gt;
* **Description**: SatNOGS observation data must be able to be stored in a distributed manner&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: A distributed storage option for observation data&lt;br /&gt;
* **Mentor**: @jinxcat&lt;br /&gt;
&lt;br /&gt;
### Add error rate and karma policies for SatNOGS clients&lt;br /&gt;
* **Description**:  SatNOGS clients should be able to use error rate and karma policies in order to prioritize observation jobs.&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: Error and karma policies applied to observation job prioritization&lt;br /&gt;
* **Mentor**: @jinxcat&lt;br /&gt;
&lt;br /&gt;
## [Diactoros Firmware](https://github.com/librespacefoundation/diactoros)&lt;br /&gt;
### Enhance diactoros firmware&lt;br /&gt;
* **Description** Implement baud rate negotiation for ground-satellite communications based on link status&lt;br /&gt;
* **Skills needed** C, RF&lt;br /&gt;
* **Expected results**: Significant improvement in data rate of satellite to ground communications&lt;br /&gt;
* **Mentor**: @manostheodoridis&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
# [SatNOGS Hardware](https://github.com/satnogs/satnogs-hardware)&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Arduino](https://github.com/satnogs/satnogs-arduino)&lt;br /&gt;
&lt;br /&gt;
### Closed loop system with feedback (encoders, stepper motors)&lt;br /&gt;
* **Description**: Design a closed loop system with positioning feedback, based on the existing tracker design, as an alternative to the current setup.&lt;br /&gt;
* **Skills needed**: Electronics, Arduino, PID tuning, Encoder circuits&lt;br /&gt;
* **Expected results**: Schematic, routing, board design, Arduino software that implements it and preferably a working prototype.&lt;br /&gt;
* **Mentor**: @zisi&lt;br /&gt;
&lt;br /&gt;
### Design and implement a stand alone open source stepper controller&lt;br /&gt;
* **Description**: Create a stand alone open source stepper controller to modularize our electronics. Use an established protocol to communicate with our microprocessor (e.g. I2C).&lt;br /&gt;
* **Skills needed**: Electronics, Arduino, Stepper controllers, I2C ,SPI or 1Wire&lt;br /&gt;
* **Expected results**: Schematic, routing, board design, Arduino software that implements it and preferably a working prototype.&lt;br /&gt;
* **Mentor**: @zisi&lt;br /&gt;
&lt;br /&gt;
### Arduino Firmware restructure with tests and fixes&lt;br /&gt;
* **Description**: Rewriting the current Arduino firmware to resolve overflow errors and implement tests for extreme conditions and use cases.&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Embedded debugging, Algorithm Design&lt;br /&gt;
* **Expected results**: A new Arduino firmware with less function overflow errors compared to the current and tests.&lt;br /&gt;
* **Mentor**: @zisi&lt;br /&gt;
&lt;br /&gt;
### Optimize rotor movement algorithm&lt;br /&gt;
* **Description**: Implement an improved and optimized rotor movement algorithm, to minimize path (length and time), apply tracking continuity (on extreme points) and apply instrumental limitations (cable twisting, horizon limits, extreme points, extreme conditions)&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Algorithm Design&lt;br /&gt;
* **Expected results**: Arduino code that implements the use cases on description.&lt;br /&gt;
* **Mentor**: @papamat&lt;br /&gt;
&lt;br /&gt;
### Homing and setup bootstrap functions, testing functions&lt;br /&gt;
* **Description**: Design and implement a setup bootstrapping (first-run) and testing of ground station suite.&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Algorithm Design&lt;br /&gt;
* **Expected results**: Arduino code that implements the use cases on description.&lt;br /&gt;
* **Mentor**: @zisi&lt;br /&gt;
&lt;br /&gt;
[[Category:SOC]]&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=GSOC_2015_Ideas&amp;diff=1671</id>
		<title>GSOC 2015 Ideas</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=GSOC_2015_Ideas&amp;diff=1671"/>
		<updated>2017-08-26T13:49:36Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: GSOC 2015 Ideas&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;These ideas were contributed by our developers and users for [Google Summer of Code 2015](http://www.google-melange.com/gsoc/homepage/google/gsoc2015). Some of them may be rough. If you wish to submit a proposal based on  these ideas, you may wish to contact the developers and find out more  about the particular suggestion you're looking at. Students are welcome to provide their own ideas for projects in collaboration with the SatNOGS developer community.&lt;br /&gt;
&lt;br /&gt;
The major communication and coordination systems of the SatNOGS project are it's [forum](http://community.satnogs.org) and it's [github repositories](http://github.com/satnogs). All interested students must apply their proposals at info@satnogs.org if selected they will be assigned two mentors (a primary and alternative mentor). &lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
# Software Projects&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Network](https://github.com/satnogs/satnogs-network)&lt;br /&gt;
### Data Dashboards using SatNOGS observation data/metadata&lt;br /&gt;
* **Description** Supply an overview of the observation data/metadata collected instead of the detailed view currently available &lt;br /&gt;
* **Skills needed** Django/Python , HTML, CSS3, Javascript&lt;br /&gt;
* **Expected results** Create  standards based user facing dashboards for SatNOGS recorded data and  metadata to provide an overview of a SatNOGS observation.&lt;br /&gt;
&lt;br /&gt;
### Concatenate observational data&lt;br /&gt;
* **Description**: An observer should be able to access a concatenated view of an observation that is calculated (and compiled) by multiple data from different ground stations. Still SatNOGS Network must be able to provide a single url page for a single observation part (ie by one ground station pass).&lt;br /&gt;
* **Skills needed**: Django/Python, HTML, CSS3, Javascript.&lt;br /&gt;
* **Expected results**: Single URL for a single observation part to allow sharing of data, page must be accessible in all modern browsers&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS DB](https://github.com/satnogs/satnogs-db)&lt;br /&gt;
### Transition our proof of concept SatNOGS DB to a working product.&lt;br /&gt;
* **Description** Design and assist implementing a transition of the SatNOGS DB project from a working prototype to a product&lt;br /&gt;
* **Skills needed** Angular.js CouchDB&lt;br /&gt;
* **Expected results** SatNOGS DB must be able to accept data from crowd-sourcing and expose them in an API.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
### Connect SatNOGS network to DB to get up-to-date transponder information.&lt;br /&gt;
* **Description**: Design, and implement a SatNOGS Network to SatNOGS DB connection (via an open API) to populate SatNOGS Network with up to date transponder information and SatNOGS DB with up to date tle satellite listings.&lt;br /&gt;
* **Skills needed**: Django, AngularDB&lt;br /&gt;
* **Expected results**: SatNOGS DB must be able to populate SatNOGS Network with all transponder data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Client](https://github.com/satnogs/satnogs-client)&lt;br /&gt;
### Build a web based controller able to control the SatNOGS client&lt;br /&gt;
* **Description**: Build a web based controller to allow users to connect to the SatNOGS client using a browser without the need to connect to the internet.&lt;br /&gt;
* **Skills needed**: HTML5, OpenWRT, JS, CSS3&lt;br /&gt;
* **Expected results**: An embeddable web application able to control SatNOGS client via a web browser&lt;br /&gt;
&lt;br /&gt;
### Package SatNOGS client for different distributions&lt;br /&gt;
* **Description**: SatNOGS client must be available in a binary package form for several distributions to further it's ease of modularity.&lt;br /&gt;
* **Skills needed**: Packaging on major distributions.&lt;br /&gt;
* **Expected results**: Released and submitted upstream packages on major distributions.&lt;br /&gt;
&lt;br /&gt;
## SatNOGS Infrastructure&lt;br /&gt;
### Improve logging and monitoring&lt;br /&gt;
* **Description**: Improve SatNOGS logging and monitoring capabilities to allow SatNOGS Network to monitor which ground station are operating properly&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: Logs and Monitoring capabilities for the Network administrators&lt;br /&gt;
&lt;br /&gt;
### Improve distributed storage of observation data&lt;br /&gt;
* **Description**: SatNOGS observation data must be able to be stored in a distributed manner&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: A distributed storage option for observation data&lt;br /&gt;
&lt;br /&gt;
### Add error rate and karma policies for SatNOGS clients&lt;br /&gt;
* **Description**:  SatNOGS clients should be able to use error rate and karma policies in order to prioritize observation jobs.&lt;br /&gt;
* **Skills needed**: DevOps, DB and Sysadmin skills, open to technology suggestions&lt;br /&gt;
* **Expected results**: Error and karma policies applied to observation job prioritization&lt;br /&gt;
&lt;br /&gt;
### Docker-ise SatNOGS setup (for both client and network)&lt;br /&gt;
* **Description**: To provide a streamlined setup process for interested parties a Docker image for SatNOGS client and SatNOGS network should be created.&lt;br /&gt;
* **Skills needed**: Docker, Python&lt;br /&gt;
* **Expected results**: Fully functional Docker images for SatNOGS Client Network.&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
# [SatNOGS Hardware](https://github.com/satnogs/satnogs-hardware)&lt;br /&gt;
&lt;br /&gt;
## [SatNOGS Arduino](https://github.com/satnogs/satnogs-arduino)&lt;br /&gt;
&lt;br /&gt;
### Closed loop system with feedback (encoders, stepper motors)&lt;br /&gt;
* **Description**: Design a closed loop system with positioning feedback, based on the existing tracker design, as an alternative to the current setup.&lt;br /&gt;
* **Skills needed**: Electronics, Arduino, PID tuning, Encoder circuits&lt;br /&gt;
* **Expected results**: Schematic, routing, board design, Arduino software that implements it and preferably a working prototype.&lt;br /&gt;
&lt;br /&gt;
### Design and implement a stand alone open source stepper controller&lt;br /&gt;
* **Description**: Create a stand alone open source stepper controller to modularize our electronics. Use an established protocol to communicate with our microprocessor (e.g. I2C).&lt;br /&gt;
* **Skills needed**: Electronics, Arduino, Stepper controllers, I2C ,SPI or 1Wire&lt;br /&gt;
* **Expected results**: Schematic, routing, board design, Arduino software that implements it and preferably a working prototype.&lt;br /&gt;
&lt;br /&gt;
### Arduino Firmware restructure with tests and fixes&lt;br /&gt;
* **Description**: Rewriting the current Arduino firmware to resolve overflow errors and implement tests for extreme conditions and use cases.&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Embedded debugging, Algorithm Design&lt;br /&gt;
* **Expected results**: A new Arduino firmware with less function overflow errors compared to the current and tests.&lt;br /&gt;
&lt;br /&gt;
### Implement or extend rotor control protocols in order to handle additional commands and errors&lt;br /&gt;
* **Description**: Additional errors and commands should be implemented to the current control protocols used in Easycomm2 and rotctrl&lt;br /&gt;
* **Skills needed**: Serial communications, Arduino, Embedded programming, Embedded debugging&lt;br /&gt;
* **Expected results**: Implementing or extending  rotor control protocols which will handle addition commands and errors.&lt;br /&gt;
&lt;br /&gt;
### Optimize rotor movement algorithm&lt;br /&gt;
* **Description**: Implement an improved and optimized rotor movement algorithm, to minimize path (length and time), apply tracking continuity (on extreme points) and apply instrumental limitations (cable twisting, horizon limits, extreme points, extreme conditions)&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Algorithm Design&lt;br /&gt;
* **Expected results**: Arduino code that implements the use cases on description.&lt;br /&gt;
&lt;br /&gt;
### Homing and setup bootstrap functions, testing functions&lt;br /&gt;
* **Description**: Design and implement a setup bootstrapping (first-run) and testing of ground station suite.&lt;br /&gt;
* **Skills needed**: Arduino, Embedded programming, Algorithm Design&lt;br /&gt;
* **Expected results**: Arduino code that implements the use cases on description.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:SOC]]&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=GS_Software&amp;diff=1601</id>
		<title>GS Software</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=GS_Software&amp;diff=1601"/>
		<updated>2016-10-29T17:33:40Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Fix categories and typography&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;SatNOGS includes an open-source modular software stack, developed from scratch or utilizing existing projects. The versatility of the architecture enables communication with existing software or easy development of custom software for specific needs.&lt;br /&gt;
&lt;br /&gt;
For all following Software components you can select to either use the SatNOGS software of the equivalent software for non-networked operations.&lt;br /&gt;
&lt;br /&gt;
==Tracking==&lt;br /&gt;
&lt;br /&gt;
Two options for tracking are available. Operators may use the popular GPredict for real-time satellite tracking and orbit prediction or a custom build solution in Python that provides API for custom or remote unattended tracking. Both solutions are communicating with the mount using rotctld over Easycomm protocol.&lt;br /&gt;
&lt;br /&gt;
===SatNOGS tracking software===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/satnogs/satnogs-client/ satnogs-client]&lt;br /&gt;
* [http://gpredict.oz9aec.net/ GPredict]&lt;br /&gt;
&lt;br /&gt;
==Web services==&lt;br /&gt;
&lt;br /&gt;
The main parts of SatNOGS web services are the Network, for orchestrating the network of distributed ground stations, and DB, for crowdsourcing Transmitter data.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/satnogs/satnogs-network satnogs network]&lt;br /&gt;
* [https://github.com/satnogs/satnogs-db satnogs db]&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=SatNOGS_Rotator_v3&amp;diff=1534</id>
		<title>SatNOGS Rotator v3</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=SatNOGS_Rotator_v3&amp;diff=1534"/>
		<updated>2015-11-21T21:01:28Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Rotator&lt;br /&gt;
|Rotator-Name=SatNOGS Rotator v3&lt;br /&gt;
|image=V3.jpg&lt;br /&gt;
|type= Az/El&lt;br /&gt;
|status= Beta&lt;br /&gt;
|latest-release= https://github.com/satnogs/satnogs-rotator&lt;br /&gt;
|latest-release-name= v3&lt;br /&gt;
|source-repo= https://github.com/satnogs/satnogs-rotator&lt;br /&gt;
|documentation= http://satnogs.dozuki.com/Guide/SatNOGS+Rotator+v3+Mechanical+Assembly&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Intro ==&lt;br /&gt;
&lt;br /&gt;
== Sourcing ==&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=File:V3.jpg&amp;diff=1533</id>
		<title>File:V3.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=File:V3.jpg&amp;diff=1533"/>
		<updated>2015-11-21T20:59:32Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Comzeradd uploaded a new version of File:V3.jpg&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=File:V3.jpg&amp;diff=1532</id>
		<title>File:V3.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=File:V3.jpg&amp;diff=1532"/>
		<updated>2015-11-21T20:49:49Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Comzeradd uploaded a new version of File:V3.jpg&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=File:V3.jpg&amp;diff=1531</id>
		<title>File:V3.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=File:V3.jpg&amp;diff=1531"/>
		<updated>2015-11-20T16:39:31Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Comzeradd uploaded a new version of File:V3.jpg&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=File:Idea.png&amp;diff=38</id>
		<title>File:Idea.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=File:Idea.png&amp;diff=38"/>
		<updated>2015-10-16T15:01:10Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Comzeradd uploaded a new version of File:Idea.png&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=File:Idea.png&amp;diff=37</id>
		<title>File:Idea.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=File:Idea.png&amp;diff=37"/>
		<updated>2015-10-16T14:53:45Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Comzeradd uploaded a new version of File:Idea.png&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=File:Idea.png&amp;diff=36</id>
		<title>File:Idea.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=File:Idea.png&amp;diff=36"/>
		<updated>2015-10-16T14:52:44Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Comzeradd uploaded a new version of File:Idea.png&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.satnogs.org/index.php?title=File:Idea.png&amp;diff=35</id>
		<title>File:Idea.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.satnogs.org/index.php?title=File:Idea.png&amp;diff=35"/>
		<updated>2015-10-16T14:52:28Z</updated>

		<summary type="html">&lt;p&gt;Comzeradd: Comzeradd uploaded a new version of File:Idea.png&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Comzeradd</name></author>
		
	</entry>
</feed>