SPECTRE

RF CARTOGRAPHY · ANDROID

Every phone is standing in an invisible field — Wi-Fi, Bluetooth, cellular, magnetic. Spectre harvests every signal the handset can hear, tags each reading with a 3D position from ARCore world tracking, and paints the field you're actually standing in. Drive records the Wi-Fi networks and cell towers audible along a route, on a map. New in 0.7.0: Spectre updates itself — it tells you when a new version is out and installs it when you say so.

↓  DOWNLOAD APK ▶  LIVE DEMO (SIMULATED) ▶  DEMO: A DRIVE
v0.7.0 · Android 7.0+ · sideload (enable “install unknown apps”)

New in 0.7.0

In-app updates. Spectre checks for a new version when it opens and shows a banner on the Sources tab; About and updates (the ⓘ button) has a manual check. The download can be paused and resumed, and nothing downloads or installs until you tap — a drive in progress is never interrupted behind your back. Versions before 0.7.0 have no updater: install this one by hand once, and it is the last time.

Added in 0.6.0

Drive (wardriving). A new tab that records Wi-Fi access points and cell towers along a route with GPS. Each sighting is placed where it was actually heard — interpolated along the track by the scan's own timestamp, because at 30 mph a two-second lag is 27 m. Live map with every network drawn as the area it could be in (colored by security), a searchable list, per-drive and all-time stats, and drives that keep recording with the screen off and survive the app being closed.

Exports. WiGLE CSV, KML and GPX, saved to a file or sent through the share sheet. Nothing is uploaded by the app.

Channel advisor. The Sources tab now recommends the quietest channel for your own router, with its reasoning shown — plus a card for the network you are connected to, search and sort, and a detail sheet for any access point.

Channels

Wi-Fi RSSI + 802.11mc BLE advertisements Cellular LTE/5G NR Magnetometer

Roadmap

1Sensor bedrock — native scanners, unified sample stream, capability probeBUILT
2Pose — ARCore world tracking, every reading gets an (x, y, z)BUILT
3Paint — volumetric AR heat fog, field interpolationBUILT
4Hunt — track a moving emitter; RTT ranging, body-shadow bearingBUILT
5Mesh — multiple phones, trilateration, true position fixBUILT
6Drive — GPS-located log of access points + towers, map, stats, WiGLE / KML / GPX exportBUILT

What it does not do

Spectre maps the field, not people. Modern phones rotate their Bluetooth and Wi-Fi identities every few minutes, and Spectre makes no attempt to defeat that — it shows unnamed blips and labels rotating identities as such. A single handset has one omnidirectional antenna and therefore no bearing information from a static reading: it can tell you roughly how far, never which way. Phase 4's bearing sweep uses your own body as the antenna — turn slowly and RSSI dips where you eclipse the source — but the lobe is tens of degrees wide, so the tracker draws an annulus, never a dot. A real position fix needs a mesh of phones (Phase 5): put two or three on one Wi-Fi network, place them on a shared plan, and their range circles intersect at a point — walls irrelevant, because a radio range is a radio range regardless of what's between. Even then the fix is only as good as knowing where the phones are, so Spectre draws an uncertainty blob sized by the actual solve residual, never a falsely-crisp pin.

Drive keeps the same line. It logs infrastructure — access points and cell towers — and never Bluetooth, because Bluetooth identities are mostly personal devices and a located log of those would be a log of people. It is passive: it records what is already broadcast and never connects, probes, captures handshakes or touches passwords. Networks whose name ends in _nomap (or contains _optout) are never stored or exported. Drives stay on the phone; nothing is uploaded.

Notes

Android throttles Wi-Fi scans to ~4 per 2 minutes. For a live map, turn off Wi-Fi scan throttling in Developer Options — the app tells you when it's on. Devices without ARCore fall back to step-counted dead reckoning, which drifts; survey points recorded that way are ringed in amber so you know not to trust them too far.

The same throttle decides how much a drive catches: throttled, Spectre gets one scan about every 30 seconds — one look every few hundred meters at driving speed — and the Drive tab shows that plainly, with a one-tap shortcut to the switch. The map background is OpenStreetMap (© OpenStreetMap contributors) and can be turned off; the map works offline on a plain grid. In the demo the drive is simulated: the streets are real, every network on them is invented.