Project Overview

Giga Ranger

2.4 GHz SX1280 time-of-flight ranging link — fixed-site, clear line of sight, ~60 km target distance

60 km
Target link distance
18 dB
Link margin
13 dBi
Antenna gain (×2)
1625 kHz
Bandwidth
SF9–10
Spreading factor
~15 m
Atmo. delay (corrected)

What It Does

Two SX1280 radio nodes measure the straight-line distance between them via round-trip time-of-flight ranging. One node acts as the initiator — it sends ranging requests and computes the distance result. The other is the responder, which the SX1280's hardware ranging engine handles automatically with no firmware timing involvement. Both sites are fixed; one sits on a mountaintop for unobstructed line of sight to the other.

Calibration will be done at known distance and confirmed via a variety of local landmarks and externally measured points; methodology still to be determined. GPS co-ordinates will not be used in any way for distance, as the attempt is to obtain projection-agnostic distance based on physical principles rather than lights in the sky.

Key design choice: The SX1280 must be the non-PA version. External power amplifiers break the chip's fast internal RF-switch turnaround that the ranging engine depends on. High-gain directional antennas provide the link budget instead — field-proven to 40 km on a non-PA module with 2 dBi whips at 4 dBm.

Hardware (per site — two identical builds)

LILYGO T3-S3 V1.2 pinout diagram
MCU + Radio
LILYGO T3-S3 (SX1280, without PA)
ESP32-S3 and SX1280 integrated on a single board with SMA connector and onboard RF switching. The "without PA" variant is required — internal switching is what enables the ranging engine. Includes onboard LiPo charger, OLED header, and USB-C. Rust and Arduino/C++ compatible.
2.4 GHz 9-unit Yagi antenna
Antenna
2.4 GHz Yagi — 13 dBi, SMA-female
9-element Yagi covering 2.40–2.48 GHz. SMA-female connector mates directly to the T3-S3 board jack — no adapter, no pigtail, no added loss. VNA-verified match: SWR ≈ 1.11 at 2.45 GHz. Beamwidth E = 48° / H = 75°, realized gain ~11 dBi. Both ends must share the same polarization (element orientation).
BME280 weather sensor in waterproof enclosure
Sensor
BME280 — Pressure / Temperature / Humidity
Feeds the tropospheric delay-correction model (GRIN). Must be BME280 — not BMP280, which lacks the humidity channel needed for the full atmospheric model. Shown here in a weatherproof IP65 enclosure suitable for outdoor mounting at the radio site.

Antenna — VNA Measurements

Both traces centered at 2.450 GHz, 1.600 GHz span. The antenna is well-matched across the full 2.40–2.49 GHz ISM band.

VNA SWR plot — minimum at 2.450 GHz, SWR 1.113
SWR — minimum 1.113 @ 2.450 GHz
VNA S11 return loss — −25.59 dB at 2.450 GHz
Return loss (S11) — −25.59 dB @ 2.450 GHz
−25.6 dB return loss means less than 0.3% of transmit power is reflected. Across the 88 MHz span from the lower to upper marker the SWR stays well below 1.5, covering the entire 2.4 GHz ISM band with margin.

Radio Configuration

ParameterValue
ChipSemtech SX1280 (2.4 GHz LoRa ranging)
Frequency2450 MHz (2.4 GHz ISM band)
Bandwidth1625 kHz — widest available, best distance resolution
Spreading factorSF9–SF10 (link margin is plentiful)
Output power13 dBm (SX1280 chip maximum)
RolesOne initiator, one responder — identical RF parameters required
CalibrationKnown GPS site coordinates → computed great-circle distance as reference
Atmospheric modelGRIN tropospheric delay from BME280 P/T/RH readings

Link Budget — 60 km

TX power (chip max)+13 dBm
TX antenna gain+11 dBi
RX antenna gain+11 dBi
Free-space path loss (60 km @ 2.45 GHz)−136 dB
Miscellaneous losses−4 dB
Estimated received signal−105 dBm
SX1280 ranging sensitivity~−124 dBm
Link margin≈ +18 dB
Power is not the constraint at 60 km — the radio horizon (antenna height above terrain + Earth curvature) is. A mountaintop site eliminates this limit. Field tests of non-PA SX1280 nodes have confirmed valid ranging at 40 km on omni 2 dBi whips at 4 dBm.

Power — 12 V Battery to 5 V (Field / Solar Site)

The T3-S3 runs from 5 V (USB / 5 V input) and regulates to 3.3 V on-board. At a solar or battery site the source is 12 VDC, requiring a DC-DC conversion stage.

ApproachNotes
RECOM R-78E5.0-1.0 (recommended) Drop-in sealed switching module, high efficiency, low noise, 1 A. One part, no tuning.
Quality buck (e.g. Pololu D24V10F5) Pre-filtered, cleaner than bare MP1584 boards. Add output decoupling caps.
Buck → LDO two-stage Buck does the efficient heavy lifting; LDO scrubs switching ripple. Cleanest rail.

Whichever converter: add 100 µF electrolytic ∥ 0.1 µF ceramic at both input and output. The T3-S3's onboard LiPo charger provides a free UPS — a small LiPo trickle-charges from the regulated 5 V rail and carries the node through cloudy spells or brief battery dips.

3.3 V Direct — Bench / Low-Power Field Build

A regulated 3.3 V buck converter can feed the T3-S3's 3V3 header pin directly, bypassing the onboard LDO entirely. The same rail powers the BME280 sensor. A JST-2 connector on the buck output makes field connection clean and reversible.

ConnectionDetail
3V3 buck (+) → T3-S3 3V3 header pin Bypasses onboard LDO. Buck becomes the system regulator — must supply ≥ 500 mA peak.
3V3 buck (+) → BME280 VCC & CSB CSB tied high keeps BME280 in I²C mode.
GND → T3-S3 GND, BME280 GND & SDO SDO to GND sets I²C address 0x76.

BME280 Wiring

The BME280 shares the T3-S3's onboard I²C bus (hardwired to SDA = GPIO 18, SCL = GPIO 17). Both the OLED display and BME280 sit on the same two wires; I²C addressing keeps them separate (OLED 0x3C, BME280 0x76).

BME280 pinT3-S3 connectionNotes
VCC3V3 header pin (or 3V3 rail)
GNDGND
SDAGPIO 18Shared with OLED
SCLGPIO 17Shared with OLED
SDOGNDSets I²C address 0x76
CSB3V3Holds device in I²C mode

Installation Notes

TopicDetail
Polarization Both Yagis must share the same element orientation (both vertical or both horizontal). A 90° mismatch costs ~20 dB.
Aiming E-plane beamwidth is 48° — ±24° within 3 dB. Pre-aim by GPS great-circle bearing, correcting ~14–15° E magnetic declination in eastern BC. Fine-peak on live RSSI readout.
Fresnel clearance Verify path profile clears terrain at the midpoint with room for the ~40 m first Fresnel zone plus ~50 m Earth bulge over 60 km. Run HeyWhatsThat or RadioMobile before deploying.
Enclosure IP65 plastic (RF-transparent) box. Weatherproof the SMA joint. Add surge arrestor and ground strap if mounting on a metal mast at height.
Diagnostics Low RSSI despite good aim → rotate one antenna 90° (polarization check). Still low → verify Fresnel / Earth bulge clearance before adjusting RF settings.