Skip to Content
GuidesAnalyzingClosing a link

Closing a link

What you will accomplish

You will start from a link that does not close, change one variable at a time, and find out which constraint is actually binding.

This is the most common real task in RF design, and guessing at it wastes far more time than measuring does.

Prerequisites

  • A constellation and a ground station.
  • Link budgets if the terms are unfamiliar.

The starting point

orbitforge link \ --constellation ph1.json \ --station "Madrid,40.43,-3.7,0.6" \ --frequency-ghz 20 --availability 99.9 --climate-zone K
madrid: coverage 100.0%, 92 contacts, best margin 4.6 dB Madrid link availability: does not close at 95%

100 percent coverage, 92 contacts, and the link fails a 95 percent target. The geometry is excellent and the link is unusable.

Coverage and link closure are different questions. A satellite being overhead says nothing about whether enough signal survives the path.

This result means the constraint is RF, not geometry. Adding satellites will not fix it, and it is worth knowing that before spending a design cycle on more of them.

Test one lever at a time

Same constellation, same station, same 92 contacts throughout. Each run changes exactly one thing.

# Baseline orbitforge link --constellation ph1.json --station "Madrid,40.43,-3.7,0.6" \ --frequency-ghz 20 --availability 99.9 --climate-zone K # Lower the frequency orbitforge link --constellation ph1.json --station "Madrid,40.43,-3.7,0.6" \ --frequency-ghz 12 --availability 99.9 --climate-zone K # Relax the availability target orbitforge link --constellation ph1.json --station "Madrid,40.43,-3.7,0.6" \ --frequency-ghz 20 --availability 99.0 --climate-zone K # Drier climate zone orbitforge link --constellation ph1.json --station "Madrid,40.43,-3.7,0.6" \ --frequency-ghz 20 --availability 99.9 --climate-zone E
ChangeBest marginAvailability achieved
Baseline, 20 GHz, 99.9 percent, zone K4.6 dBDoes not close at 95 percent
Frequency 20 to 12 GHz14.1 dB99.822 percent
Availability target 99.9 to 99.0 percent10.1 dBDoes not close at 95 percent
Climate zone K to E7.3 dBDoes not close at 95 percent

Reading the comparison

Frequency is the lever that works. Dropping from 20 to 12 GHz is worth 9.5 dB and turns a failing link into 99.8 percent availability.

Free-space loss accounts for only about 4.4 dB of that, from the 20log⁡10(f)20\log_{10}(f) term. The rest is atmospheric, and most of it is rain: at 20 GHz in a wet climate zone rain dominates the budget, while at 12 GHz it is a manageable term.

The other two levers improve the margin without closing the link, which is the trap in this table.

Relaxing the availability target to 99.0 percent gained 5.5 dB of best margin and still does not close. Moving to a drier climate zone gained 2.7 dB and still does not close.

A rising margin figure feels like progress. Only the availability line tells you whether you have a working link, and it is the line to read first.

Why the margin number misleads

best margin is the best moment of the best pass: highest elevation, shortest slant range, calmest atmosphere.

Availability is evaluated across the whole pass at the worst geometry the elevation mask permits, in the weather the availability target implies. A design can have healthy best margin and negative margin for most of every pass.

Read the availability line. Use best margin only to see which direction a change moved things.

The levers, and what each costs

LeverEffectCost
Lower frequencyLarge, especially in wet climatesLess bandwidth available, more spectrum competition
Higher transmit powerDirectPower, mass, thermal
Larger antennaDirectMass, stowage, pointing accuracy
Higher elevation maskRemoves the worst geometriesFewer usable contacts, longer gaps
Lower availability targetLess rain margin requiredMore outage per year
Site diversityRain rarely hits both sitesA second ground station

Raising the elevation mask deserves care: it improves the link by discarding the passes that were failing, which also reduces coverage. Check both together.

Finish against a measured threshold

Once the link closes, quote it against a decoder that was actually measured rather than a nominal figure:

orbitforge waveform thresholds --modcods qpsk-1/2 --output thr.json orbitforge link --constellation ph1.json \ --station "Madrid,40.43,-3.7,0.6" \ --frequency-ghz 12 --availability 99.9 --climate-zone K \ --modcod-thresholds thr.json --modcod qpsk-1/2

That is the difference between margin against an assumption and margin against a demonstration.

Checklist

  1. Read the availability line, not the margin, to judge success.
  2. Change one variable per run.
  3. Confirm the contact count is unchanged, so you know the geometry did not move.
  4. If you raised the elevation mask, re-check coverage.
  5. Quote the availability target and climate zone alongside any result.

Next steps

Question? Give us feedbackDocuments Varaha Constellation Designer main (pre-release)
Last updated on