Skip to content

Radio Telescope Mode

The Carryout G2’s firmware includes a built-in radio telescope mode: the azscanwxp command performs an azimuth sweep while cycling through DVB transponders at each position, measuring RSSI (received signal strength) at every grid point. Combined with the Ku-band LNB and motorized AZ/EL positioning, this turns the dish into a rudimentary RF imaging system.

This capability was originally discovered by Chris Davidson in his winegard-sky-scan project.

Before scanning, enable the LNA and configure the tuner frequency.

  1. Enter the DVB submenu from root.

    TRK> dvb
    DVB>
  2. Enable the LNA. The lnbdc odu command enables the LNB low-noise amplifier in outdoor unit mode, setting 13V (V-pol). The boot default is 18V (H-pol).

    DVB> lnbdc odu
  3. Check current channel parameters.

    DVB> dis

    This shows the frequency, symbol rate, and LNB polarity currently configured.

  4. Select a transponder (optional). If you want to scan at a specific frequency:

    DVB> t 1

    Use freqs to list available transponder frequencies. For ham radio sky mapping, set the DVB tuner to a frequency near your target (e.g., 10 GHz Ku-band downconverted through the LNB to ~1178 MHz IF).

  5. Verify RSSI readings work.

    DVB> rssi 10
    Reads:10 RSSI[avg: 498 cur: 502]

    The noise floor is approximately 500. If you see readings near this value, the LNA is active but no strong signal is present — this is normal for a clear sky pointing away from any satellites.

  6. Return to the root menu.

    DVB> q
    TRK>

The command lives in the MOT submenu:

TRK> mot
MOT> azscanwxp [motor] [span] [resolution] [num_xponders]
ParameterTypeUnitsDescription
motorintMotor ID (0=AZ, 1=EL)
spanfloatdegreesTotal azimuth sweep range
resolutionintcentidegrees (0.01 deg)Step size per position
num_xpondersintNumber of transponders to cycle at each position

Sweep 10 degrees on azimuth at 1.00 degree steps, checking 3 transponders per position:

MOT> azscanwxp 0 10 100 3

Each measurement point produces a line:

Motor:<id> Angle:<cdeg> RSSI:<adc> Lock:<0/1> SNR:<dB> Scan Delta:<step>
FieldDescription
MotorMotor ID being swept
AngleCurrent position in centidegrees
RSSIReceived signal strength (raw ADC count)
LockDVB carrier lock status (1 = locked, 0 = no lock)
SNRSignal-to-noise ratio in dB
Scan DeltaStep count since last position
  1. Home the motors if not already done.

    TRK> mot
    MOT> h 0
    MOT> h 1
  2. Position the dish at the starting elevation. Choose an EL angle for the first scan strip.

    MOT> a 1 30
  3. Enable the LNA (if not done already).

    MOT> q
    TRK> dvb
    DVB> lnbdc odu
    DVB> q
    TRK> mot
  4. Run the azimuth sweep. Log the serial output to a file for post-processing.

    MOT> azscanwxp 0 360 100 3

    This sweeps the full 360-degree azimuth range at 1-degree steps with 3 transponders per position.

  5. Increment elevation and repeat. Move up by your desired EL step and run another AZ sweep.

    MOT> a 1 35
    MOT> azscanwxp 0 360 100 3
  6. Post-process the data. Parse the serial output into a grid of AZ/EL/RSSI values and render as a 2D heatmap. Each scan line gives you one row of the image.

The MOT submenu also has a simpler azscan command that doesn’t cycle transponders:

MOT> azscan [az_range] [el_range] [delay]

This performs an AZ sweep with RSSI measurements at each position but without the transponder cycling. It’s faster but provides less frequency diversity.

RSSI ValueMeaning
~233-238ADC noise floor (no signal, no LNA)
~489-502LNA active, noise floor (clear sky)
Above 600Weak signal detected
Above 1000Strong signal (likely a satellite)

The ADC rssi command (in the ADC submenu) gives raw ADC counts. The DVB rssi <n> command (in the DVB submenu) averages over n samples and provides both average and current readings.

The PEAK submenu’s rssits command alternates between H-pol (18V, even transponders) and V-pol (13V, odd transponders), reporting separate readings for each polarization:

PEAK> rssits
Even_sig = 489, Odd_sig = 235

V-pol (odd) has a quieter noise floor than H-pol (even).

The BCM4515 DVB tuner includes a DiSEqC 2.x controller accessible from the DVB submenu. DiSEqC (Digital Satellite Equipment Control) uses 22 kHz tone bursts on the coax LNB bias line to control LNB polarity and band selection.

For ham radio use, the key commands are:

CommandFunction
lnbdc oduSet 13V (V-pol) — enables LNA in outdoor unit mode
send E0 10 38 F0Raw DiSEqC packet: select switch port 1
send E0 10 38 F1Raw DiSEqC packet: select switch port 2

The boot default is 18V (H-pol). Polarity affects which transponders are visible and the RSSI noise floor.

ParameterValueDescription
ovraddr0x11Target LNB address (standard first LNB)
rrto210 msReceive reply timeout
pretx15 msPre-command TX delay
tdthresh110Tone detect threshold

The birdcage serve command adds RSSI support to the rotctld protocol when running with a Carryout G2:

Terminal window
# Read RSSI (10 samples)
echo "R 10" | nc 127.0.0.1 4533
# Enable LNA
echo "L" | nc 127.0.0.1 4533
# Check capabilities
echo "D" | nc 127.0.0.1 4533
# Returns: CAPS:rssi,lna

This allows external software to combine position control with signal measurements over a single TCP connection.