Motorized Radio Telescope Project

This project is a motorized radio telescope I built with azimuth and elevation control, GPS, and real-time tracking. I designed and assembled the wiring, control box, and software myself, with the goal of building a low-cost system that could still do meaningful observational work.

The telescope is tuned to 1420 MHz to observe neutral hydrogen in the Milky Way. With a GPS module and RTC chip, it can timestamp data and align observations with galactic coordinates for more accurate tracking. The project was also designed with future expansion in mind, including the possibility of combining multiple instruments into a larger interferometric array.


Wiring Diagram

Inside the control box, I use a mini breadboard to distribute SDA, SCL, 5V, and GND from the Arduino to all connected modules.

Control Box Photo Gallery


Parts List

A full parts list is included here. The total cost came out to a little over $200, though many of the components could likely be sourced more cheaply through local electronics suppliers. The main exceptions are the LNA and RTL-SDR, which were more specialized parts.

3D Printed Components

The control box enclosure, motor mounts, gears, and many of the structural parts were custom designed and 3D printed. This helped keep costs down and also made it much easier to fit the mechanical and electronic components together cleanly.

Most of the printed parts were made in PETG for added strength and durability. Design files are available on request.

Software

Arduino Control Code

The Arduino handles real-time control of the motors, GPS, RTC, and display. It reads potentiometer input to adjust azimuth and elevation, while continuously updating the system with tracking information.

At its current stage, the code is set up for manual control through potentiometers. The system was designed with automated tracking in mind, and the code could be extended to use GPS and RTC data to calculate galactic coordinates and point the dish automatically.

Download Arduino Code

SDR & Signal Processing Tools

To receive, view, and log radio data, I used a combination of the following tools:

  • GNU Radio for signal-processing workflows

  • SDR# for real-time signal visualization

  • Virgo for SDR data logging

  • Chronolapse for image and time-lapse capture

  • gr-osmoSDR for SDR source support within GNU Radio

Links to these tools are included in the Parts and Software List.

Physics and Math

This telescope is tuned to 1420 MHz, the 21 cm line of neutral hydrogen. Observing that line makes it possible to trace hydrogen in the Milky Way and study the structure of our galaxy.

With GPS position data and accurate time from the RTC, the system can compute Local Sidereal Time and convert celestial coordinates into local pointing coordinates. In practice, that means Right Ascension and Declination can be translated into Azimuth and Elevation so the dish can be directed toward a target in the sky.

The angular resolution depends on the dish diameter and the observing wavelength, with a simple estimate given by

θ ≈ λ / D

where λ is the wavelength and D is the dish diameter.

The project was also built with the larger idea of radio interferometry in mind, where multiple telescopes are combined into an array and the achievable resolution is set more by the baseline between them than by any one dish alone.

Overview

Fritzing diagram, parts sourcing, and build process documented here.

Helpful Links, Parts List, Software Downloads:

Parts and Software List

Fritzing Diagram Link:

Fritzing Diagram (-- Schematic view only --)

Arduino Code:

Download Arduino Code

Build Process

This project took about a month to design, build, and test. Initially, I planned to repurpose a stationary satellite dish, but I realized that full azimuth and elevation control was needed. I decided to make the system modular, upgradable, and interferometer-ready. I used an old chair base with wheels for portability and 3D printed most of the structure for precision and weight savings. The signal is routed through a NooElec SAWbird+ 1420 MHz LNA (Low-Noise-Amplifier) to allow a clear and strong signal in processing.

Mounting and Motion

The dish is rotated azimuthally using a NEMA 23 stepper motor connected to a 64:1 Banebots gearbox. The gearbox output shaft is attached to the dish with a custom 3D-printed mount. For elevation, a 12V linear actuator is mounted to the top of the dish. Extending the actuator lowers the elevation; retracting it raises the focal point upward.

Azimuth Accuracy

The azimuth system uses a NEMA 23 stepper motor with a 1.8° step angle, paired with a 64:1 gearbox. This gives:

  • Full-step resolution: 1.8° / 64 = 0.028125° per step
  • With 1/16 microstepping: 0.028125° / 16 = 0.00176° per microstep

This enables smooth, high-precision azimuth control—especially when microstepping is enabled through a compatible driver.

Procedure

  1. Power on the control box using the 12V and 24V adapters.
  2. Wait for the OLED and LCD displays to initialize and begin showing GPS and RTC data.
  3. Use the azimuth and elevation potentiometers to manually aim the dish. Values will be shown live on the LCD screen.
  4. Open your SDR software (e.g., SDR# or GNU Radio) and tune to 1420 MHz.
  5. Begin signal capture or visualization using tools like Virgo or Chronolapse.
  6. Optional: Adjust the dish to scan across the sky and monitor changes in signal strength.
  7. For long-term observation, log GPS, time, and frequency data using your preferred software setup.

Future versions of the software may support automatic pointing based on target coordinates and real-time tracking.