https://wiki.satnogs.org/api.php?action=feedcontributions&user=DL4PD&feedformat=atomSatNOGS Wiki - User contributions [en]2024-03-29T08:59:01ZUser contributionsMediaWiki 1.32.0https://wiki.satnogs.org/index.php?title=Hacking_the_GNURadio_Module_%27gr-satnogs%27&diff=2528Hacking the GNURadio Module 'gr-satnogs'2019-02-01T10:59:13Z<p>DL4PD: Fixed typo</p>
<hr />
<div>A few steps on starting with hacking on 'gr-satnogs' on a SatNOGS node:<br />
<br />
Ensure you have these packages installed:<br />
<br />
- python-dev<br />
- swig<br />
<br />
$ sudo apt install swig python-dev<br />
<br />
Remove the package that has been installed by ansible (if you're using ansible):<br />
<br />
$ dpkg -r gr-satnogs<br />
<br />
<br />
Get the repo from git:<br />
<br />
$ git clone git@gitlab.com:librespacefoundation/satnogs/gr-satnogs.git<br />
<br />
Follow the instructions in 'README.md', in short:<br />
<br />
$ mkdir build<br />
$ cd build<br />
$ cmake ../<br />
$ make [-j4] # -j4 to speedup things ;-)<br />
$ sudo make install<br />
$ sudo ldconfig<br />
<br />
See if everything worked:<br />
<br />
$ python -c "import satnogs"<br />
<br />
If no output appears your custom 'gr-satnogs' module has been built and can be used by satnogs-client.<br />
If it failed, a message like:<br />
<br />
Traceback (most recent call last):<br />
File "<string>", line 1, in <module><br />
ImportError: No module named satnogs<br />
<br />
will appear.<br />
On the next observation check<br />
<br />
$ journalctl -u satnogs-client.service<br />
<br />
for errors!<br />
<br />
Happy hacking!<br />
<br />
[[User:DL4PD|DL4PD]] ([[User talk:DL4PD|talk]])<br />
[[Category:Development]]</div>DL4PDhttps://wiki.satnogs.org/index.php?title=Hacking_the_GNURadio_Module_%27gr-satnogs%27&diff=2411Hacking the GNURadio Module 'gr-satnogs'2019-01-09T15:01:27Z<p>DL4PD: Created page with "A few steps on starting with hacking on 'gr-satnogs' on a SatNOGS node: Ensure you have these packages installed: - python-dev - swig $ sudo apt install swig python-dev..."</p>
<hr />
<div>A few steps on starting with hacking on 'gr-satnogs' on a SatNOGS node:<br />
<br />
Ensure you have these packages installed:<br />
<br />
- python-dev<br />
- swig<br />
<br />
$ sudo apt install swig python-dev<br />
<br />
Remove the package that has been installed by ansible (if you're using ansible):<br />
<br />
$ dpkg -r gr-satnogs<br />
<br />
<br />
Get the repo from git:<br />
<br />
$ git clone git@gitlab.com:librespacefoundation/satnogs/gr-satnogs.git<br />
<br />
Follow the instructions in 'README.md', in short:<br />
<br />
$ mkdir build<br />
$ cd build<br />
$ cmake ../<br />
$ make [-j4] # -j4 to speedup things ;-)<br />
$ sudo make install<br />
$ sudo ldconfig<br />
<br />
See if everything worked:<br />
<br />
$ $ python -c "import satnogs"<br />
<br />
If no output appears your custom 'gr-satnogs' module has been built and can be used by satnogs-client.<br />
If it failed, a message like:<br />
<br />
Traceback (most recent call last):<br />
File "<string>", line 1, in <module><br />
ImportError: No module named satnogs<br />
<br />
will appear.<br />
On the next observation check<br />
<br />
$ journalctl -u satnogs-client.service<br />
<br />
for errors!<br />
<br />
Happy hacking!<br />
<br />
[[User:DL4PD|DL4PD]] ([[User talk:DL4PD|talk]])</div>DL4PDhttps://wiki.satnogs.org/index.php?title=Metal_antenna_rotator&diff=2097Metal antenna rotator2018-05-28T18:04:24Z<p>DL4PD: </p>
<hr />
<div>To build this metal antenna rotator you will need a welder.<br />
<br />
<br />
<br />
== Bill of materials ==<br />
{| {{table}}<br />
| align="center" style="background:#f0f0f0;"|'''Part'''<br />
| align="center" style="background:#f0f0f0;"|'''Qty'''<br />
| align="center" style="background:#f0f0f0;"|'''Source'''<br />
| align="center" style="background:#f0f0f0;"|'''Price per Unit ($)'''<br />
|-<br />
| <span>Nema23 stepper motor - Wormgear 60:1</span> || 2 || [https://aliexpress.com/item/Ratio-20-1-self-lock-High-Torque-L56mm-NEMA23-3A-RV30-Turbine-Worm-Gearbox-Geared/32681621498.html][https://aliexpress.com/item/Ratio-20-1-self-lock-High-Torque-L112mm-NEMA23-4-2A-RV30-Turbine-Worm-Gearbox/32681645351.html] || <br />
|-<br />
| <span>Bearing for the az axis 100x135x25 mm</span> || 1 || [https://aliexpress.com/item/51120-Thrust-Bearing-100x135x25-mm-ABEC-1-1-PC-Axial-51120-Thrust-Ball-Bearings-8120/32813388761.html] || <br />
|-<br />
| <span>Stepper motor driver</span> || 2 || [https://aliexpress.com/item/2-Phase-Stepper-Driver-MA860-DSP-24V-80VDC-or-VAC16-70VAC-Output-6A-Current-NEMA-34/32785076340.html] || <br />
|-<br />
|}<br />
<br />
<br />
<br />
<br />
<br />
== Communication test and setup ==<br />
<br />
Open a terminal and start the rotctld (the rotator controller ''daemon''):<br />
<pre><br />
$ rotctld -vvvvv -T 127.0.0.1 -r /dev/ttyUSB1 -m 202 -s 19200 -t10<br />
</pre><br />
<br />
The parameter -t is to use ''\n'' as end of command.<br />
The parameter -vvvvv activates the verbosity - remove some to get less infos.<br />
<br />
Open another terminal and start the rotctl client:<br />
<pre><br />
$ rotctl -m 2 -r 127.0.0.1<br />
</pre><br />
<br />
To test you will need to:<br />
<pre><br />
Rotator command: P<enter><br />
</pre><br />
<br />
then enter target position:<br />
<br />
<pre><br />
Azimuth: 360<enter><br />
Elevation: 90<enter><br />
</pre><br />
<br />
Or shorten this to:<br />
<pre><br />
Rotator command: P 180 090<enter><br />
</pre><br />
<br />
The motors should move, if not: check connections.<br />
<br />
Then you have to check that the endstop are working:<br />
<br />
<pre><br />
Rotator command: IP1<enter><br />
Rotator command: IP2<enter><br />
</pre><br />
<br />
If the result ends with ',0', and the endstop is not activated, its good. (if it's not good, reverse them in the config)<br />
<br />
If the two endstops are at 0 when reset, the homing will be peformed.<br />
Homing is always in the opposite way of the motor (-max angle)</div>DL4PDhttps://wiki.satnogs.org/index.php?title=Metal_antenna_rotator&diff=2096Metal antenna rotator2018-05-28T18:03:44Z<p>DL4PD: </p>
<hr />
<div>To build this metal antenna rotator you will need a welder.<br />
<br />
<br />
<br />
== Bill of materials ==<br />
{| {{table}}<br />
| align="center" style="background:#f0f0f0;"|'''Part'''<br />
| align="center" style="background:#f0f0f0;"|'''Qty'''<br />
| align="center" style="background:#f0f0f0;"|'''Source'''<br />
| align="center" style="background:#f0f0f0;"|'''Price per Unit ($)'''<br />
|-<br />
| <span>Nema23 stepper motor - Wormgear 60:1</span> || 2 || [https://aliexpress.com/item/Ratio-20-1-self-lock-High-Torque-L56mm-NEMA23-3A-RV30-Turbine-Worm-Gearbox-Geared/32681621498.html][https://aliexpress.com/item/Ratio-20-1-self-lock-High-Torque-L112mm-NEMA23-4-2A-RV30-Turbine-Worm-Gearbox/32681645351.html] || <br />
|-<br />
| <span>Bearing for the az axis 100x135x25 mm</span> || 1 || [https://aliexpress.com/item/51120-Thrust-Bearing-100x135x25-mm-ABEC-1-1-PC-Axial-51120-Thrust-Ball-Bearings-8120/32813388761.html] || <br />
|-<br />
| <span>Stepper motor driver</span> || 2 || [https://aliexpress.com/item/2-Phase-Stepper-Driver-MA860-DSP-24V-80VDC-or-VAC16-70VAC-Output-6A-Current-NEMA-34/32785076340.html] || <br />
|-<br />
|}<br />
<br />
<br />
<br />
<br />
<br />
== Communication test and setup ==<br />
<br />
Open a terminal and start the rotctld (the rotator controller ''daemon''):<br />
<pre><br />
rotctld -vvvvv -T 127.0.0.1 -r /dev/ttyUSB1 -m 202 -s 19200 -t10<br />
</pre><br />
<br />
The parameter -t is to use ''\n'' as end of command.<br />
The parameter -vvvvv activates the verbosity - remove some to get less infos.<br />
<br />
Open another terminal and start the rotctl client:<br />
<pre><br />
rotctl -m 2 -r 127.0.0.1<br />
</pre><br />
<br />
To test you will need to:<br />
<pre><br />
Rotator command: P<enter><br />
</pre><br />
<br />
then enter target position:<br />
<br />
<pre><br />
Azimuth: 360<enter><br />
Elevation: 90<enter><br />
</pre><br />
<br />
Or shorten this to:<br />
<pre><br />
Rotator command: P 180 090<enter><br />
</pre><br />
<br />
The motors should move, if not: check connections.<br />
<br />
Then you have to check that the endstop are working:<br />
<br />
<pre><br />
Rotator command: IP1<enter><br />
Rotator command: IP2<enter><br />
</pre><br />
<br />
If the result ends with ',0', and the endstop is not activated, its good. (if it's not good, reverse them in the config)<br />
<br />
If the two endstops are at 0 when reset, the homing will be peformed.<br />
Homing is always in the opposite way of the motor (-max angle)</div>DL4PDhttps://wiki.satnogs.org/index.php?title=Adjusting_the_SatNOGS_Client&diff=1949Adjusting the SatNOGS Client2018-02-13T07:06:36Z<p>DL4PD: /* SatNOGS station adjustments */</p>
<hr />
<div>(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.)<br />
<br />
== Prerequisites / dependencies ==<br />
<br />
This page assumes:<br />
<br />
* you've read all the [[Get Started|Getting Started]] page, as well as the pages linked under "Build" and "Operate" on the [[Main Page]]<br />
* you've already made your [[Operation|first observations]] and have some waterfalls in the [[Development Environment]]<br />
* you've installed [http://gqrx.dk/download install gqrx] on your local computer.<br />
<br />
== SatNOGS station adjustments ==<br />
<br />
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.<br />
<br />
To start, please connect to your Raspberry Pi's local web interface. By default the URL is something like "http://192.168.0.5:5000"; 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.<br />
<br />
Here's how it looks in network mode:<br />
<br />
<p>[[File:SatNOGS_local_network_mode.png|center|600px]]</p><br />
<br />
And here's how it looks when it's switched to standalone mode:<br />
<br />
<p>[[File:SatNOGS_local_standalone_mode.png|center|600px]]</p><br />
<br />
{{Message|<br />
* Do not forget to set this back to network mode when done with your adjustments!<br />
* While your station is in standalone mode, no observations from the SatNOGS network will be executed!}}<br />
<br />
After setting to standalone mode, please SSH to your SatNOGS Pi with your well-known user account; by default, this is the user "pi". After successful authorization you will see a prompt like this:<br />
<br />
<pre><br />
Linux satnogs190-dev 4.9.59-v7+ #1047 SMP Sun Oct 29 12:19:23 GMT 2017 armv7l<br />
<br />
The programs included with the Debian GNU/Linux system are free software;<br />
the exact distribution terms for each program are described in the<br />
individual files in /usr/share/doc/*/copyright.<br />
<br />
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent<br />
permitted by applicable law.<br />
Last login: Fri Jan 12 07:34:11 2018 from 192.168.10.35<br />
pd@satnogs190-dev:~ $<br />
</pre><br />
<br />
Now go ahead and start the "RTL SDR spectrum server":<br />
<br />
$ rtl_tcp -a 0.0.0.0<br />
<br />
If everything is fine, you will get an output like this:<br />
<br />
<pre><br />
Found 1 device(s):<br />
0: Generic, RTL2832U, SN: 77771111153705700<br />
<br />
Using device 0: Generic RTL2832U<br />
Found Rafael Micro R820T tuner<br />
[R82XX] PLL not locked!<br />
Tuned to 100000000 Hz.<br />
listening...<br />
<br />
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. <br />
</pre><br />
<br />
{{Message|You will have to stop this server if you want to go back to network mode - do not forget about this!}}<br />
<br />
Now go ahead and start gqrx:<br />
<br />
<p>[[File:Startup_gqrx.png|center|600px]]</p><br />
<br />
You will have to go to the setup menu, either by clicking on the "harde" symbol, or navigating through the menu item called "File -> I/O Devices"<br />
<br />
<p>[[File:Gqrx_io_configuration.png|center]]</p><br />
<br />
Click on "Device" and chose "RTL-SDR Spectrum Server"<br />
Edit "Device string" to match your Pi's IP address, Port defaults to 1234,<br />
which is the same as the default setting for your server you just started on<br />
the Pi.<br />
Set "Input Rate" 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<br />
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:<br />
<br />
<pre>1,8 MSPS * 16 bit/s = 28,8 MBit/s</pre><br />
<br />
<br />
"Audio Output -> Device" and "-> Sample rate" should be set by default,<br />
values on average soundcards would be something like "Default, 48 kHz"<br />
Close the dialogue by clicking "OK"<br />
Your RTL-SDR spectrum server on the Pi should now show up a connection from<br />
your computer running gqrx.<br />
<br />
<pre><br />
client accepted!<br />
set gain mode 1<br />
set agc mode 0<br />
set direct sampling 0<br />
Disabled direct sampling mode<br />
set offset tuning 0<br />
set sample rate 960000<br />
ll+, now 1<br />
ll+, now 2<br />
set freq correction 42<br />
set freq 144500000<br />
set gain mode 0<br />
set agc mode 1<br />
set gain 0<br />
set freq 145814000<br />
ll-, now 0<br />
ll+, now 1<br />
ll+, now 2<br />
ll+, now 3<br />
ll+, now 4<br />
ll+, now 5<br />
ll+, now 6<br />
ll+, now 7<br />
ll+, now 8<br />
ll+, now 9<br />
ll+, now 10<br />
ll+, now 11<br />
ll+, now 12<br />
ll+, now 13<br />
</pre><br />
<br />
The only thing left now is to "Start DSP" - from the menu item "File", by hitting C-d or simply clicking the Play-Button.<br />
<br />
<p>[[File:Gqrx_running.png|center|600px]]</p><br />
<br />
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 "Receiver options" and change the settings to fit the beacon: "Filter width Normal", "Filter shape Normal", "Mode CW-L", "AGC Medium". Set Squelch to something low, so you can hear noise from your speakers. Maybe you have to Adjust the audio "Gain" to something like "0.0 dB". 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:<br />
<br />
<p>[[File:Gqrx_ppm-error_offset.png|center|600px]]</p><br />
<br />
Now got to the tab called "Input controls" and find an input field called "Freq. correction". By default this should show "0,0 ppm". 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.<br />
<br />
<p>[[File:Gqrx_ppm-error_corrected.png|center]]</p><br />
<br />
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:<br />
<br />
$ sudo satnogs-setup<br />
<br />
Navigate to "Advanced -> SATNOGS_PPM_ERROR" and enter the new value.<br />
<br />
<p>[[File:Fcecd26ca08cf3d23dffce719ef1dd13a4f7109d.png|center]]</p><br />
<br />
Exit the satnogs-setup with "Back", then "Apply Configuration" (this might take a while) and "Back".<br />
<br />
You are done with frequency offset correction.<br />
<br />
{{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.}}<br />
<br />
== Enhancements ==<br />
<br />
=== Waterfall color improvements ===<br />
<br />
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.<br />
<br />
Log into the Pi and start at making a copy of /usr/share/satnogs/scripts/satnogs_waterfall.gp, just in case:<br />
<br />
$ cp /usr/share/satnogs/scripts/satnogs_waterfall.gp ~/.<br />
<br />
Now you can start editing the script:<br />
<br />
$ sudo nano /usr/share/satnogs/scripts/satnogs_waterfall.gp<br />
<br />
Search for a line starting with cbtics:<br />
<br />
# Spectravue palette and scale<br />
set cbtics (-110, -105, -100, -95, -90, -85, -80, -75, -70, -65, -60, -55, -50, -55, -40)<br />
<br />
Comment it out by adding a #, copy, paste and edit that new line that it matches something like this:<br />
<br />
# Spectravue palette and scale<br />
#set cbtics (-110, -105, -100, -95, -90, -85, -80, -75, -70, -65, -60, -55, -50, -55, -40)<br />
set cbtics (-90, -85, -80, -75, -70, -65, -60, -55, -50, -55, -45, -40, -35, -40, -25)<br />
<br />
Now go ahead and find a line with cbrange:<br />
<br />
set ylabel 'Time (seconds)'<br />
set cbrange [-100:-50]<br />
<br />
I guess, one already gets the point - change cbrange to match the new cbtics:<br />
<br />
set ylabel 'Time (seconds)'<br />
#set cbrange [-100:-50]<br />
set cbrange [-85:-35]<br />
<br />
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.</div>DL4PDhttps://wiki.satnogs.org/index.php?title=Adjusting_the_SatNOGS_Client&diff=1948Adjusting the SatNOGS Client2018-01-26T08:07:09Z<p>DL4PD: /* SatNOGS station adjustments */</p>
<hr />
<div>(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.)<br />
<br />
== Prerequisites / dependencies ==<br />
<br />
This page assumes:<br />
<br />
* you've read all the [[Get Started|Getting Started]] page, as well as the pages linked under "Build" and "Operate" on the [[Main Page]]<br />
* you've already made your [[Operation|first observations]] and have some waterfalls in the [[Development Environment]]<br />
* you've installed [http://gqrx.dk/download install gqrx] on your local computer.<br />
<br />
== SatNOGS station adjustments ==<br />
<br />
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.<br />
<br />
To start, please connect to your Raspberry Pi's local web interface. By default the URL is something like "http://192.168.0.5:5000"; 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.<br />
<br />
Here's how it looks in network mode:<br />
<br />
<p>[[File:SatNOGS_local_network_mode.png|center|600px]]</p><br />
<br />
And here's how it looks when it's switched to standalone mode:<br />
<br />
<p>[[File:SatNOGS_local_standalone_mode.png|center|600px]]</p><br />
<br />
{{Message|<br />
* Do not forget to set this back to network mode when done with your adjustments!<br />
* While your station is in standalone mode, no observations from the SatNOGS network will be executed!}}<br />
<br />
After setting to standalone mode, please SSH to your SatNOGS Pi with your well-known user account; by default, this is the user "pi". After successful authorization you will see a prompt like this:<br />
<br />
<pre><br />
Linux satnogs190-dev 4.9.59-v7+ #1047 SMP Sun Oct 29 12:19:23 GMT 2017 armv7l<br />
<br />
The programs included with the Debian GNU/Linux system are free software;<br />
the exact distribution terms for each program are described in the<br />
individual files in /usr/share/doc/*/copyright.<br />
<br />
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent<br />
permitted by applicable law.<br />
Last login: Fri Jan 12 07:34:11 2018 from 192.168.10.35<br />
pd@satnogs190-dev:~ $<br />
</pre><br />
<br />
Now go ahead and start the "RTL SDR spectrum server":<br />
<br />
$ rtl_tcp -a 0.0.0.0<br />
<br />
If everything is fine, you will get an output like this:<br />
<br />
<pre><br />
Found 1 device(s):<br />
0: Generic, RTL2832U, SN: 77771111153705700<br />
<br />
Using device 0: Generic RTL2832U<br />
Found Rafael Micro R820T tuner<br />
[R82XX] PLL not locked!<br />
Tuned to 100000000 Hz.<br />
listening...<br />
<br />
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. <br />
</pre><br />
<br />
{{Message|You will have to stop this server if you want to go back to network mode - do not forget about this!}}<br />
<br />
Now go ahead and start gqrx:<br />
<br />
<p>[[File:Startup_gqrx.png|center|600px]]</p><br />
<br />
You will have to go to the setup menu, either by clicking on the "harde" symbol, or navigating through the menu item called "File -> I/O Devices"<br />
<br />
<p>[[File:Gqrx_io_configuration.png|center]]</p><br />
<br />
Click on "Device" and chose "RTL-SDR Spectrum Server"<br />
Edit "Device string" to match your Pi's IP address, Port defaults to 1234,<br />
which is the same as the default setting for your server you just started on<br />
the Pi.<br />
Set "Input Rate" 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<br />
"Audio Output -> Device" and "-> Sample rate" should be set by default,<br />
values on average soundcards would be something like "Default, 48 kHz"<br />
Close the dialogue by clicking "OK"<br />
Your RTL-SDR spectrum server on the Pi should now show up a connection from<br />
your computer running gqrx.<br />
<br />
<pre><br />
client accepted!<br />
set gain mode 1<br />
set agc mode 0<br />
set direct sampling 0<br />
Disabled direct sampling mode<br />
set offset tuning 0<br />
set sample rate 960000<br />
ll+, now 1<br />
ll+, now 2<br />
set freq correction 42<br />
set freq 144500000<br />
set gain mode 0<br />
set agc mode 1<br />
set gain 0<br />
set freq 145814000<br />
ll-, now 0<br />
ll+, now 1<br />
ll+, now 2<br />
ll+, now 3<br />
ll+, now 4<br />
ll+, now 5<br />
ll+, now 6<br />
ll+, now 7<br />
ll+, now 8<br />
ll+, now 9<br />
ll+, now 10<br />
ll+, now 11<br />
ll+, now 12<br />
ll+, now 13<br />
</pre><br />
<br />
The only thing left now is to "Start DSP" - from the menu item "File", by hitting C-d or simply clicking the Play-Button.<br />
<br />
<p>[[File:Gqrx_running.png|center|600px]]</p><br />
<br />
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 "Receiver options" and change the settings to fit the beacon: "Filter width Normal", "Filter shape Normal", "Mode CW-L", "AGC Medium". Set Squelch to something low, so you can hear noise from your speakers. Maybe you have to Adjust the audio "Gain" to something like "0.0 dB". 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:<br />
<br />
<p>[[File:Gqrx_ppm-error_offset.png|center|600px]]</p><br />
<br />
Now got to the tab called "Input controls" and find an input field called "Freq. correction". By default this should show "0,0 ppm". 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.<br />
<br />
<p>[[File:Gqrx_ppm-error_corrected.png|center]]</p><br />
<br />
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:<br />
<br />
$ sudo satnogs-setup<br />
<br />
Navigate to "Advanced -> SATNOGS_PPM_ERROR" and enter the new value.<br />
<br />
<p>[[File:Fcecd26ca08cf3d23dffce719ef1dd13a4f7109d.png|center]]</p><br />
<br />
Exit the satnogs-setup with "Back", then "Apply Configuration" (this might take a while) and "Back".<br />
<br />
You are done with frequency offset correction.<br />
<br />
{{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.}}<br />
<br />
== Enhancements ==<br />
<br />
=== Waterfall color improvements ===<br />
<br />
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.<br />
<br />
Log into the Pi and start at making a copy of /usr/share/satnogs/scripts/satnogs_waterfall.gp, just in case:<br />
<br />
$ cp /usr/share/satnogs/scripts/satnogs_waterfall.gp ~/.<br />
<br />
Now you can start editing the script:<br />
<br />
$ sudo nano /usr/share/satnogs/scripts/satnogs_waterfall.gp<br />
<br />
Search for a line starting with cbtics:<br />
<br />
# Spectravue palette and scale<br />
set cbtics (-110, -105, -100, -95, -90, -85, -80, -75, -70, -65, -60, -55, -50, -55, -40)<br />
<br />
Comment it out by adding a #, copy, paste and edit that new line that it matches something like this:<br />
<br />
# Spectravue palette and scale<br />
#set cbtics (-110, -105, -100, -95, -90, -85, -80, -75, -70, -65, -60, -55, -50, -55, -40)<br />
set cbtics (-90, -85, -80, -75, -70, -65, -60, -55, -50, -55, -45, -40, -35, -40, -25)<br />
<br />
Now go ahead and find a line with cbrange:<br />
<br />
set ylabel 'Time (seconds)'<br />
set cbrange [-100:-50]<br />
<br />
I guess, one already gets the point - change cbrange to match the new cbtics:<br />
<br />
set ylabel 'Time (seconds)'<br />
#set cbrange [-100:-50]<br />
set cbrange [-85:-35]<br />
<br />
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.</div>DL4PD