by LB5ZH, Geir Inge and Andreas G.

HAM radio has a lot to offer, and one of the more exotic items is communication via amateur satellites. AMSAT is a worldwide group of amateur radio operators that design, build and operate non-commercial amateur radio satellites. These are launched as secondary payloads on commercial space missions, and as of now there have been 108 such satellites launched to orbit. Some of these are garage made satellites with software made by volunteer effort and as of now there exists even a geo-stationary satellite. The first satellite were launched back in 1961, barely four years after the launch of Russia´s first Sputnik. These satellites carry the name OSCAR, for “Orbiting Satellite Carrying Amateur Radio”. AMSAT maintains a list of active satellites which can be used for two-way communication.

Most of these satellites are low-powered following a low earth orbit meaning that communication equipment must track the orbit as it passes through the sky in just minutes. It is possible to track the most powerful of these satellites with a handheld antenna pointing in the correct direction, but for best results a multi-element yagi antenna mounted on a computer controlled rotator that tracks the orbit of the satellite is required.

Project goals

This is part of a student project at TRINT, where one of the students aim to design and build an automatic satellite tracker for two-way radio communication using cheap and available hardware. He has put forward the following criteria:

  • Portable. It must be possible to relocate the antenna anywhere without requirements of realignment of any kind. It must be able to use the GPS position and magnetic north automatically. Being portable means mounted on a tripod, and all parts should be easy to split into portable items.
  • Automatic. It should be a set and forget solution. With the use of a GPS, Gyro and magnetic compass the software should be able to calculate the position of satellites. A two-axis rotator with motors should then automatically track the orbiting satellite, providing a fully autonomous experience.
  • Cheap. No commercial rotators will be considered. This project is a DIY project with parts ordered from eBay, Amazon

The radio itself, antenna and computer is considered out of scope.


Such a project requires a lot of research and consideration into the design of every part. The following is a list of considerations

  • What type of rotator
  • What motors (servo, stepper or DC)
  • What type of controller for the motors
  • Interface to PC
  • What kind of commercial antenna
  • What type of radio. Two-way or SDR
  • What type of software to calculate the orbit and interface the rotator
  • Which parts can be 3D printed and what has to be ordered


With some research we found that there already exists several designs for such automatic rotators in the ham radio community.

Clear Sky Institute, Elwood Downey design

Back in 2016 Elwood Downey, WBØOEW, published an article in ClearSkyInstitute with his two-axis autonomous tracker. His design uses two servo motors controlled by an Adafruit Feather HUZZAH (ESP8266). The article mention the previous Arduino Mega as the controller but it has later been updated with the more powerful ESP8266. This ESP has the advantage of built-in bluetooth and WiFi chipsets for computer control making the overall design simpler.

The ingenious with his design is the fully autonomous control of the servo motors. By using a Adafruit 746, a 66 channel GPS sensor breakout, together with the Adafruit 9-DOF absolute orientation breakout, he is able to know the exact position and the orientation of the antenna for a fully automatic computer controlled operation. There is no manual alignment of any kind!

Unfortunately this design has several flaws. First of all, it is not waterproof. Being in this part of the world we need a waterproof design. Neither can it handle big antennas as it will be wobbly. And last, although 2016 is not that old, none of the servo motors used in his design are available. There are of course updated models of the servos available, but being RC type servos these are very expensive. There is also no design for how to put this all together, which is left up to the builder. The accuracy of the rotator is within +/- 2.5° of the orbit.


SatNOGS is an Open Source global network of satellite ground-stations. By using open technologies the project design full ground stations that are globally connected. This enables multiple observers to utilise multiple ground stations around the globe to monitor and download data using autonomous amateur built stations. The data gathered is publicly available through the projects website. The main purpose is to receive telemetry data from Low Earth Orbit satellites using SDR radios free for everyone to use. SatNOGS is part of Libre Space Foundation and has even been used by European Space Agency to gain initial status observations of a CubeSat after launch.

One of the projects of SatNOGS is to build a complete rotator using either stepper or DC motors. The design is made from scratch and utilise 3D printed parts throughout the whole design. It is constantly evolving and version 3.1 is currently in development. Version 3.x is a major redesign over version 2 and version 3.1 aims to be more compact and more accurate than version 3.0. Properly built the accuracy is within +/- 0.5° of the orbit. The rotator is waterproof and can handle big antennas. By using simple stepper motors and 3D printed support the design is relatively cheap.

The SatNOGS design assume that the antenna is stationary mounted, where it has been properly aligned manually. There is no GPS, and no gyro to keep it horizontal, as well as no compass to tell the direction that it is pointing. The controller is custom designed and you will ned to have the PCB printed somewhere and solder on all the components. The Arduino is still the core processor of this design, but will be mounted on the PCB.

Rotator decisions

The SatNOGS rotator has several advantages, such as

  • Cheap, using 3D printed parts and simple motors
  • Accurate
  • Waterproof
  • Sturdy

We chose to go with stepper motors due to simple design and predictability in software with small discrete steps. It is also easy to control with the Adafruit Motor FeatherWing.

As for controller, we will go with both the SatNOGS controller and the design by Elwood Downey. Our primary goal was to be portable and autonomous so we will start with the Elwood design, meaning that we will have to adopt his software to be using stepper motors instead of servos. In addition, the SatNOGS rotator must be enhanced with additional GPS and 9-DOF sensors. Later on, we will add the SatNOGS controller to be able to be part of the global network of open satellite ground stations.


The advantage of using satellites as communication relays is that they are within line of sight of the radio. As such, there is no need for huge antennas, but at the same time they transmit with really low power so it is an advantage to use a narrow beam antenna such as a multi-element yagi. Due to the requirements of a portable ground-station we cannot use a fixed antenna. The antenna elements must be able to be split apart and put in a transportation bag.

Telemetry from satellites usually use high frequencies up into several GHz. On the other hand, communicating through them using them as repeaters are usually performed using amateur radio frequencies in the VHF and UHF band. We want to start using them as communication relays but will most likely add antennas for telemetry reception such as weather images.

We found the Arrow Antenna to be a good performing multi-element yagi and at the same time be portable with transportation bags. Due to our location at 69° north the decision ended on the 14 element Alaskan 146/437-14 antenna.

Ordering the parts

As of now, we are ordering the necessary parts. The 3D printer has been put to work, and most of those parts are finished. We follow the BOM from SatNOGS, with additional Adafruit parts from the Elwood controller design. We ordered the parts according to this list:

  • All aluminium parts, screws and nuts from Motedis in Germany. The aluminium frame is ordered pre-cut.
  • All Adafruit/Arduino parts from Tinkerly/ParadiseTronic in Germany (before we knew about the good selection of Arduino stuff at
  • Stepper motors, pulleys and drive belts from GRoboTronics in Greece. They also have a good selection of Arduino.
  • Ball bearings, RS Online
  • Microswitches, Lemona Electronics in Lithuania
  • M3 DIN 914 headless screws from Accu in the UK. They have a good selection of screws, nuts and other hardware.

Building the electronics

We decided to add a 20×4 LCD screen with an I2C controller circuit to make it easier to debug the project. We can print the IP of the built-in webserver as well as the status of the various sensors, GPS and so on. In the field, without a PC connected to the ESP8266 controller such a display will make it all easier to operate.

Adafruit has a full ecosystem of small electronic controllers, and their new feather ecosystem makes it especially easy to create small microcontroller based projects. Pinouts for the various components:

Testing the ESP8266 controller

The software is based on the work by Elwood Downey, WBØOEW. We are adding our own code to control the stepper motors as well as status updates on the additional LCD display. Putting it all together using the breadboard for the first time did give us the opportunity to test the software and the various components.

Be aware though, that the software linked to on Clear Sky Institute by Elwood Downey is actually the Arduino Uno based code. Further down, somewhat hidden, but still on that page you will find the code for the ESP8266. The code is good quality and with comments that made it easy to adapt to our needs. It did compile without errors even with the latest versions of the various libraries.