Open hardware / acoustic early warning

It hears the propellers before you do.

Drone detection almost always means listening for radio. A fibre-optic FPV drone trails a glass thread back to its pilot and transmits nothing at all, so there is no signal to find and nothing to decode.

VolAnti ignores the radio entirely. It listens for the harmonic comb that four spinning propellers cannot switch off, and when it hears one it beeps, flashes red, buzzes, writes the time to a screen that survives a power cut, and tells every other unit on the network.

ListeningLive detector
score 0.00 / thr 1.70 f0 --- Hz frame 32 ms

Detection and alert only. VolAnti listens and raises the alarm. It will never include jamming, spoofing, interception, targeting or any other countermeasure, in this project or in any fork of it.

Deployed

A real product, already in the field.

Multiple units, designed and handmade in a month, now deployed at the site they were built for.

The unit

91 millimetres square

Four printed parts, one four-layer board, a screen, a cell and a stand that also clips to a belt. Everything a builder needs is public: printable files, gerbers, the bill of materials with part numbers, and the joints you solder yourself.

The microphone ports are 45 degree cones and the microphones sit at fixed positions on the board. That geometry is acoustic, not decorative.

Full parts list

Reach measured predicted

104 metres, measured.

A single unit on a brick-walled street, traffic passing, detected a hovering four-motor airframe at 104.2 m, 114 yards on the map. Nothing fired on the cars.

Sped up. The unit is in the hand, the airframe is at the far end of the street.
Google Maps distance measurement, 114 yards
114 yd, 104.2 m, from where the unit stood to where the airframe hovered.
The unit showing its test screen after the detection
The test screen right after. The star marks the tier that fired: tier 4, 31.9 over 30.5.

What the physics predicts for other conditions

Wind moves the range by an order of magnitude. The green band is what to expect in each condition; the red dot is what was measured.

Still air, quiet siteunder 2 m/s
104 m measured
100 to 200 m
Light breeze2 to 5 m/s
50 to 120 m
Breezy5 to 8 m/s
15 to 50 m
Strong wind, upwindabove 8 m/s
5 to 25 m
range to expect comfortably inside reach measured

Also measured

104 m
Detection range, single unit, roadside
Field
0
False alarms in the field, cars and people included
Field
423 Hz
First real-rotor lock, inside the predicted band
Bench
29.4 ms
Worst frame of 1938 against a 32 ms budget. No overruns.
Bring-up
bit-identical
Golden vectors on the board matched the laptop reference
Bring-up

Caveats. Range drops with wind. It cannot tell whose drone it is. It is not a life-safety product.

The signature

What a drone sounds like, exactly

A propeller with B blades turning at R revolutions per second chops the air B times R times a second. That is the fundamental. Because the chopping is not a smooth sine wave, energy also lands at every whole multiple of it, and the result is a comb: sharp teeth at even spacing with quiet gaps between them.

No transmitter, no detectionRadio detectors need the aircraft to emit. A fibre spool means it never does.
The spacing is a measurementThe detector does not guess whether a sound is drone-like. It measures a frequency and checks that it holds still.
Nothing outdoors looks like thisWind, traffic and rain are broadband smears. A regular comb is a strong statement.
spectrum16 kHz, 2048-point FFT
level, dB frequency, Hz - - - adaptive noise floor

Signal chain

How it hears

Seven steps, running end to end every 32 milliseconds, on a microcontroller that costs about four pounds. Everything below is also running in the live simulator, where you can put a drone at a distance, add wind or a voice, and watch each stage react.

Sampling 4 microphones16,000 samples a second

Four digital microphones, clocked from one source, turn the air into numbers sixteen thousand times a second each. The four streams are added: sound arriving from any direction adds up, and each capsule's own noise does not. That is where the array's 6 dB comes from.

Fast Fourier transform 2048 pointsevery 32 ms

Every 512 new samples, the last 2048 are turned from a waveform into a spectrum: how much sound there is at each frequency, in bins 7.8 Hz wide. A propeller comb shows up as a row of evenly spaced spikes.

Noise floor learned, bin by bin6 s up, 0.8 s down

The detector keeps a running picture of what the site normally sounds like at every frequency and subtracts it. Quiet changes are learned slowly, so a new tone stands proud for seconds. Loud broadband bursts, wind gusts, a lorry, are learned in under a second, so they cannot fake a comb.

Scoring 1931 candidate combs6 frames to lock

For every possible blade rate from 70 to 2000 Hz, add the energy sitting on that comb's teeth, subtract the energy in its gaps, and keep the best. Then hold: the same rate has to win six frames in a row, within 2 %, before anything is allowed to happen. Noise does not do that. A rotor does.

Four detectors a miss costs more than a beeprunning in parallel

The same spectrum feeds four independent detectors at the same time, each built to catch what the others miss. A single detector would have to choose between a drone that arrives and a drone that hovers. These four do not choose, and the alert is the first of them to be sure. The 104 m detection above was tier 4.

TIER 1 sealed

Fast comb

An aircraft that arrives, approaches or changes. Scored against the fast floor. Its behaviour is pinned by golden test vectors, so the same audio gives the same number to the last decimal place on a laptop and on the board.

0.23 s to alert
threshold 1.70 crosses in 0.23 s
TIER 2 on

Slow comb

An aircraft that arrives and then hovers. A steady sound is exactly what a fast adaptive floor learns and erases, so this tier scores against a floor that has not caught up yet.

1.4 to 4 s
hovering drone, steady fast floor swallows it 30 s floor does not
TIER 3 on

Envelope wash

Loaded, close, high-thrust flight, where the giveaway is not a clean comb but a broadband roar modulated above 3 kHz. It works when the comb is smeared.

1 to 3 s
amplitude above 3 kHz modulated by the blades
TIER 4 on

No-floor comb

Two seconds of spectrum, whitened across frequency rather than against a floor, then the same comb score. Nothing is learned into a floor, so a drone that hovers for a long time in a place that never goes quiet is still a comb. The slowest tier and the most sensitive. It is the one that fired at 104 m.

When it fires

Five channels, at once

A detector nobody notices is a detector that does not work. Between alerts the light blinks slow green, because a silent detector and a dead detector otherwise look identical.

Beeper

Loud and patterned. The channel that carries through a wall and wakes people.

Red light

Solid red through the light pipe in the lid. Readable across a yard, day or night.

Vibration motor

A haptic channel for anyone holding or standing at the unit, and for noisy places.

E-paper screen

Writes the alert and the time, and holds it with the power off.

Radio

An 18-byte packet over LoRa to every other unit in range, so one unit hearing something is heard everywhere.

The build

How it got made

A month, in order. The full archive is on GitHub.

01Parts on the desk

Parts on the desk

Microphone breakouts, a dev board, a bag of passives.

02First power-up

First power-up

The processor that would run everything.

03First microphones on a breadboard

First microphones on a breadboard

Four capsules and a signal for the first time.

04The breadboard grows

The breadboard grows

Every part of the final unit ran here first.

05On the bench

On the bench

Scope, supply, and the detector on a laptop beside it.

06First real rotor

First real rotor

The comb locking on a spinning propeller, 423 and 471 Hz.

07Designing the PCB

Designing the PCB

Four layers, 84 mm square, microphones where the array needs them.

08The board, rendered

The board, rendered

What was about to be ordered.

09Designing the case

Designing the case

Base, lid and mount around the acoustics.

10Building the drone rig

Building the drone rig

A panel to carry the microphones under a real airframe.

11The drone rig takes shape

The drone rig takes shape

Capsules and cabling on the panel.

12The drone rig

The drone rig

Identical to the four-motor FPV airframes it has to detect: same size, motors and propellers.

13First outdoor field test

First outdoor field test

On grass, in a breeze.

14All the enclosure parts arrive

All the enclosure parts arrive

Everything that closes around the board.

15Installing grill cloth

Installing grill cloth

Behind every cone before the lid goes on.

16First batch of boards arrive

First batch of boards arrive

Straight from the fab.

17Remaining enclosure parts arrive

Remaining enclosure parts arrive

The last of the printed set.

18Parts to go on the board

Parts to go on the board

Display, antenna, beeper and motor, waiting for the iron.

19Soldering of extra parts on the PCB

Soldering of extra parts on the PCB

The few joints the fab could not place.

20In the lab

In the lab

Where all of it happened.

21Printing accessory parts

Printing accessory parts

Rings and mounts on the bed.

22Bring-up

Bring-up

The board matching the laptop reference bit for bit.

23Board in the base, display and lid

Board in the base, display and lid

First fit.

24Battery foam pad in

Battery foam pad in

Before the cell.

25Fitting the battery

Fitting the battery

The cell under the board.

26Unit assembly

Unit assembly

Lid, cloth, screen, light pipe.

27The face

The face

Four grilles, a screen, a light and a button.

28In the hand

In the hand

Sealed and running.

29More units

More units

Built the same, tested against each other.

30More than one finished unit

More than one finished unit

Side by side.

Build it

Make your own

Everything is public: firmware, gerbers, bill of materials with part numbers, printable enclosure files and a step-by-step build guide. Start on a breadboard and move up, or go straight to the board.

The breadboard is not a toy version. It is the same firmware and the same detector, and the step from one to the other is a board order.

Try the detector first, in the live simulator github.com/agamrossen/VolAnti