The antenna pattern your AP actually has
Vendor pattern plots are coarse, often years old, and rarely show all three bands. This rig spins a Wi-Fi access point on a turntable and listens to its beacons from a few metres away, building the real pattern at 2.4, 5 and 6 GHz, from a horizon cut up to the full sphere.
What it measures
Everything is shown the way the AP hangs in the building: face down on a ceiling, so the floor is straight below and the horizon is where most clients live. Two cradles cover the directions that matter.
Flat cradle: the horizon
The AP lies on its back and turns through 360°. One sweep gives the horizon ring, the cut that decides coverage down a corridor or across an open office.
Elevation cradle: the whole sphere
The AP stands on edge on a roll disc that steps every 15°. Each sweep is a vertical great circle through the face and back. Twelve roll positions add up to 432 readings covering every direction.
How a measurement works
The AP transmits its normal beacons. Nothing about it is modified, so the pattern is the one your clients see.
Step and settle
The turntable moves the AP 10° and settles. The final approach is always in the same direction, so gear backlash never shifts the angle.
Listen for ten seconds, both ways
A spectrum analyzer at least 3 m away, level with the AP's centre, parks on the channel centre and catches every beacon, about a hundred per dwell. A sweep that hops across the channel would miss most of them. The probe antenna picks up one polarization, so every position is measured twice, vertical and horizontal, and the two are added as power.
Check against a reference
A second receiver rides on the rotation axis, fixed relative to the AP. If the AP's own output drifts during an hour-long run, the reference sees it and the drift is taken out.
Match per-beacon RSSI
An Oscium Nomad captures every beacon by BSSID at the same time, giving a second, client-like view of the same dwell.
Map it
Turntable and roll angles become directions on the sphere, and the readings become a 3D pattern, a heat map and the classic polar cuts.
The rig
Built from printed parts and hobby-grade instruments, checked against each other on the bench. Nothing metal sits above the base.
| Turntable | Printed PETG, two 608 bearings on an M8 shaft, 4:1 GT2 belt, NEMA-17 stepper, hall-sensor homing |
|---|---|
| Roll axis | Geared stepper on the elevation cradle, indexed every 15° |
| Mast | ¾ inch PVC, cables run inside it |
| Probe | tinySA Ultra+ ZS407 with a log-periodic antenna, 3 m or more from the AP, in its far field |
| Reference | A second ZS407, with a HackRF Pro as backup (gain steady to 0.24 dB over an hour) |
| Capture | Oscium Nomad, per-beacon RSSI by BSSID |
| Control | Raspberry Pi 5 at the turntable, a MacBook recording the session over one Ethernet cable |
| Site | Outdoors on open farmland, with every other radio switched off |
Status
The viewer runs on simulated data for now. Real patterns replace it after the first runs.
- Sept 2026Turntable, cradles and roll disc designed and printed
- Sept 2026Turntable and roll firmware, Pi agent, instruments validated on all three bands
- NextFirst spin-up: homing, direction and zero offset
- ThenRecorder with live dot map, then the first horizon cuts
- ThenFull-sphere runs and published patterns, starting with the APs I deploy most