SATNOGS – Open Source global network of satellite ground-stations

SatNOGS Network is a global management interface to facilitate multiple ground station operations remotely. An observer is able to take advantage of the full network of SatNOGS ground stations around the world. It’s part of the SatNOGS project.

Since end of April 2022 I operate a satellite monitoring ground station. It is running on a Raspberry Pi 4 with an Airspy SDR connected – via a dual band bandpass filter (2m/70cm) – to a 3/5 element Yagi antenna. The Yagi is fixed mounted pointing SSW with a 20 deg elevation.


Station ID is 2650 – 9V1KG. I just updated the software to the latest version 1.8.1. Over the last 9 months 3500 observation were stored in the SATNOGS database, the success rate is between 60 and 70%.

Foot switch and CW Keyer for wfview

Wfview is a program to remotely control Icom radios. You can find more information on https://wfview.org/.

As I do not have space for my own radio shack and my IC-7610 is located in the living room beside the balcony door, my IC-9700 in the guestroom near to the window, I use wfwiew since a couple of months to operate both radios from my (small) computer desk.

In order to make operation more convenient, I wanted to use my foot switch as PTT. An Arduino micro can emulate a USB keyboard. In wfview PTT is switched using ctrl-t (transmit) and ctrl-r (receive). A simple program on the Arduino micro can do this:

#include <AceButton.h>
using namespace ace_button;
#include <Keyboard.h>

#define LED_BUILTIN 17

const int BUTTON_PIN = 2;
const int LED_ON = LOW;
const int LED_OFF = HIGH;

AceButton button(BUTTON_PIN);

void handleEvent(AceButton*, uint8_t, uint8_t);

void setup() {
  // put your setup code here, to run once:
  digitalWrite(LED_BUILTIN, LED_OFF);

void loop() {
  // put your main code here, to run repeatedly:

void handleEvent(AceButton* /*button*/, uint8_t eventType,
                 uint8_t /*buttonState*/) {
  switch (eventType) {
    case AceButton::kEventPressed:
      digitalWrite(LED_BUILTIN, LED_ON);
      // ctrl-T
    case AceButton::kEventReleased:
      // compensates for network latency
      digitalWrite(LED_BUILTIN, LED_OFF);
      // ctrl-R

I have built-in the controller in a small 3D printed housing with a 1/4″ jack plug.

My foot switch solution for wfview

It works like a charm! A similar solution is possible to use a CW keyer (for example K3NG). I open the CQRLOG CW window and input my CW from the keyer to be converted back to text and sent to my IC-7610.

K3NG Keyer with Arduino Micro
CW setup

My first QSO via Satellite

Finally I made it: my first ever qso in CW via satellite (RS-44). As I only have a free open view of less than 90 deg from my balcony, I have to wait for the right passes, and the time window is usually maximum 10 min.

Setup on the balcony

Using the IC-9700 with the 5 element log. per. antenna on my home brew az/el rotator, I was able to hear my own CW signal from the satellite and manage a qso with E21EJC in Thailand!

Software is Gpredict with Hamlib running on my Mac.

QSO on minute 6:37

Mini Satellite Antenna Rotator MK1

For my VHF/UHF station I am using a dual band five element log-per antenna, similar to the Elk log-per. It is actually an ideal antenna for portable use, as it can be assembled and disassembled easily and packed in a small size. Now the idea came up to use it for satellite communication with my FT-818. The only thing missing was a azimuth/elevation rotator to track the satellites.

I started with my own design, using a stepper motor for azimuth and a servo for elevation. After a while I cancelled the project, as I had too many problems with electromagnetic interference to the servo.

Searching for an alternative DIY solution, I came across the SARCNET website, and the mini satellite antenna rotator MK1.

I decided to build it, but to separate motors and electronics; purchased the parts and started the 3D print design. Below the details and the final result.

Overview of all 3D printed parts

When I first time applied power to the motor drivers, the following happened with a loud bang! Luckily, it was outdoor on my balcony.

Exploded capacitor ...
The 100 uF capacitor was faulty, this is the result after applying 12 V to the board.

My thanks to SARCNET, the software works w/o problems. I only had another EMI problem, which could be solved finding a well screened micro USB cable and adding a few ferrites.

3D Printing for Ham Radio

Approximately a year ago I finally spent the money and bought a 3D printer. My main motivation was that I don’t have a workshop, and therefore I was not able to do even small mechanical things. I decided for the Creality Enders 3 Pro, as this printer has a large community, and it is easy to find tutorials and tons of other information on the web.

For the CAD program I ended up with Blender. It might sound like an overkill, but it’s open source and runs under Windows, Linux and Mac. Blender was the main hurdle, to get active with own designs, as it took quite a while to get familiar with the program using it for precision design.

From then onward, I have realized so many things using the 3D printer, and I can no longer imagine the hobby without this tool. Most items are printed with PETG.


Drill press: https://www.thingiverse.com/thing:1642711/files

Rod and pipe cutter: https://www.thingiverse.com/thing:3323294

FT-60 radio mount: https://www.thingiverse.com/thing:979456

xp YJec