SOVA: the scanner that finds a drone operator's remote-control signal below the noise
1. What it is
SOVA is an autonomous receiving system on a single SDR board. It surveys the 100–1500 MHz band, finds the signal of a drone operator's remote control running the ExpressLRS (ELRS) protocol below the noise level and takes it under tracking without any operator involvement. For the first time in the world, the search for a frequency-hopping signal below the noise has been solved on one compact board with a single receive channel: from the antenna to the decision "target present" takes 2.56 s.
2. Key achievements
| Achievement | Measured |
|---|---|
| The signal cell was found at −28.3 dB relative to the noise in a 38.4 MHz band, that is −9.5 dB in the 500 kHz chirp band | 19 of 20 attempts by the raw maximum, 20 of 20 by the normalised one |
| The cell was found at −30.0 dB | 20 of 20 by the normalised maximum |
| The cell was found at −34.3 dB | 16 of 20 by the normalised maximum |
| The weakest tested levels in COARSE mode at which the scanner identified the cell: SF6 −34.2, SF7 −38.6, SF8 −37.8, SF9 −37.3 dB | the detector limit was not reached; a sensitivity margin remains |
| Decision in 2.56 s: 64 exposures of 40 ms | DEEP mode |
| Full survey of 100–1500 MHz | 21 s |
| A full day of continuous on-air operation on the antenna | over 260 thousand observations per session, the real drone operator's remote registered on the 915 MHz tile on every pass, persistent lines detected and excluded from decisions |
The sensitivity levels were measured on a test bench with a LoRa SF6…SF9 stimulus in a known cell. Operation on a real drone operator's remote was verified on air with frequency hopping (FHSS) enabled: the receiver registers the remote's signal on the 915 MHz tile on every pass with a signal-to-decision-threshold ratio above 30, and over a day of continuous session it accumulates more than 260 thousand observations. The decision threshold is set from the calculated false-alarm rate: in the measurement series the threshold corresponds to a false-alarm probability of 1/101 per decision, while in the operating mode the threshold in sigmas yields about one false decision per hour over the whole band.
3. Detection range
Detection threshold in decibels relative to the receiver noise in a 38.4 MHz band: conservatively −28.3 dB, in COARSE mode down to −38.6 dB. Calculated detection range for an operator's remote of 100 mW with a 2 dBi antenna, receiving antenna 2 dBi, by the link-budget model with ground reflection and the radio horizon:
Conditions Conservative threshold −28.3 dB Best −38.6 dB Open terrain, antenna 2 m 6…8 km, horizon 11 km 11…14 km, horizon 11 km Dense urban area, antenna 2 m 2…2.5 km 3.6…4.6 km Time to detection: a decision on a tile in 2.6 s, a full survey of the 100–1500 MHz band in 21 s. A remote that has just been switched on will be found within 24 s at most.
For a 1 W remote, our ELRS detection range in open terrain is limited only by the radio horizon.
4. Why this is a hard problem
An ELRS remote has no fixed frequency. Its energy is spread over 40 channels in frequency and over time: a packet is shorter than the interval between hops, and the rest of the time the channel is silent. At the moment of observation the channel, the hop phase, the mode and the spreading factor SF6…SF9 are unknown. Amplification does not help here: the noise grows together with the signal. We solved this problem with the structure of the signal and the accumulation of evidence: the channel grid coincides with the receiver's cell grid, the hops have a constant cadence, the LoRa chirp is compressed by dechirping, and the evidence accumulates from exposure to exposure up to a confident decision.
5. ELRS for the specialist
The FCC915 grid contains 40 channels from 903.5 MHz in 600 kHz steps, a span of 23.4 MHz. LoRa modulation: a chirp 500 kHz wide, spreading factors SF6…SF9. The six modes M0…M5 differ in the hop interval from 10 to 80 ms and in the spreading factor; a packet is always shorter than the interval.
The frequency hopping is deterministic: an LCG generator seeded by the seed sets a sequence of 256 positions, from which 240 are taken as six blocks of 40 channels, and the sync channel 20 stands at fixed positions. The seed space is . To an outside observer this looks like random short bursts at different frequencies. It is exactly this structure that the SOVA scanner uses: 600 kHz per cell, the hop cadence, the chirp shape and the persistence of evidence in time.
6. How we do it
Hardware. The scanner firmware image carries the internal index A00. PlutoSky R1 board: Zynq XC7Z020-2 SoC with an ARM Cortex-A9 processor and an Artix-7 FPGA, AD936x transceiver, 1 GB of memory, Linux. Sampling at 30.72 MHz, a 2048-point FFT, 15 kHz bin, 48 cells of 600 kHz per tile 28.8 MHz wide, 49 tiles over 100–1500 MHz. Survey exposure 5 ms, evidence exposure 40 ms. The FPGA computes the spectra and accumulates the cell energy at the sampling rate; the processor makes the decisions.
The Attention method. Each cell is compared with its own reference , the median of the previous 256 records, while the common factor removes changes in the receiver gain:
The threshold is set in sigmas from the design separability : , for a single record 7.22σ. The decision relies on three independent pieces of evidence: local contrast in windows of 1, 8 and 64 records, the sum and the maximum over exposures. A tile passes through the states QUIET → SUSPECT → CONFIRM → TRACK with hold times of 0.8 s, 5 s, 2 s and 60 s. Simultaneous bursts in three or more non-adjacent cells within 100 ms are classified by the scanner as interference, and cells with a share of hot records above 25 % as persistent lines, and both are excluded from decisions. DEEP mode adds dechirping under an SF hypothesis; COARSE mode gives the largest sensitivity margin during the survey.
7. What the customer gets
Today SOVA is a working autonomous scanner that finds a drone operator's remote-control signal 28…38 dB below the noise in a 38.4 MHz band, makes a decision in 2.56 s and sustains a full day of on-air operation without human intervention. For the first time in the world such a result has been achieved on a single SDR board, and every number in this document was obtained by measurement.