✓ BUDGET OK: enough signal both ways. ⚠ LOW MARGIN: works, with less reserve than you asked for. ✕ BELOW SENSITIVITY: at least one direction fails. Short dashes mean the link only works by bending over terrain; long grey dashes are not analysed yet.
Coverage: the edge is where the link just meets the required margin for the share of locations chosen in Settings → Model. Darker shading means more signal to spare (steps at +5, +10, +20 and +30 dB; legend in Settings → Display). Blank means no link. The solid line traces the coverage edge and the dashed line the farthest reach; turn either off in Settings → Display.
In ⚙ SETTINGS → Model. Picking a preset under RF, or opening a site from the Tower or Repeater Finder, sets the method and clutter treatment that suit it. Method, reliability and indoor reception are always shown; tick Advanced settings to change the clutter treatment and the rest.
Leave measured noise blank to estimate it from the noise figure. A node's own RF settings override these.
Diffraction uses the Bullington method (ITU-R P.526 §4.5.1). Delta-Bullington (ITU-R P.1812 §4.3) adds smooth-earth diffraction, which matters when one end is low over open ground (a phone or handheld): Bullington alone stays near free space there and overstates range. Height scenarios show how much a result depends on terrain and clutter error; they are not confidence intervals.
The model predicts the median: at a 50% coverage edge, about half the spots get signal. Choosing a higher share adds the margin needed for that share of locations (location variability, ITU-R P.1546 §12 and P.1812: about 2 dB per standard deviation, so 90% adds about 2.5 dB). That is the spot-to-spot variation the ITU measures; it does not cover errors in the terrain and clutter data, which the fade margin is there for. Indoors adds building entry loss (ITU-R P.2109): about 14 dB for typical buildings and 31 dB for energy-efficient ones with metallised glass, at 850 MHz. Both add to the required margin of links and coverage. The coverage edge and its outline are drawn at the chosen share; shading inside shows how much signal is left over beyond it.
Clutter heights come from ESA WorldCover, or measured canopy height where a tile exists. Loss grows with the distance a path runs through clutter, up to the cap. Each result shows which source it used.
Each node's coverage is shown in its colour on a grid of cells (see Map cell); a cell counts as covered when most points in it are. The far end uses the global radio and RX antenna height.
The edge is where the link just meets the required margin, including the share of locations in Model. Each node uses its own colour.
Import timestamped directed observations or traceroutes as JSON. SNR is not path loss. Match node names exactly, or supply a nodeNameMap. Data stays in this browser session; download a project to retain it.
Traceroutes: {"traces":[{"timestamp":"…","modem":"LongFast","frequencyMHz":915,"forward":[{"node":"A"},{"node":"B","snrDb":-5}],"reverse":[]}]}. SNR belongs to the receiving hop. Include failed attempts as separate observations with success:false.
No observations imported.
Grid: type:"terrain-grid", source, date, datum, rows, cols, north, south, west, east, elevations. WGS84 bounds describe sample centres. Elevations are AMSL metres, row-major north to south; null means no data. Match the vertical datum to AWS terrain and surveyed heights. Maximum 1 million cells. AWS fills outside the grid and no-data cells.
Share URLs contain model settings and sites only. Imported measurements and DEM data travel only in the project file.