Spotter: what the $64 ESP32 companion hears, and why it hears more than your phone
Wavelens on a phone already finds trackers, body cams, plate readers and drones. Spotter makes it find them sooner and further out. It's the companion we recommend first, because it fixes the two things a phone can't: a phone can't choose which Wi-Fi channel it listens on, and its antenna is the size of a paperclip, pointed wherever the phone happens to be lying.
What's in the box
- An ESP32-C5 board, which hears Wi-Fi on both 2.4 and 5 GHz as well as Bluetooth LE, with a u.FL antenna socket, flashed with the current Wavelens companion firmware, tested on the bench, and closed up in a black enclosure with the Wavelens logo on the lid, a status light and cut-outs for the USB port and the antenna lead.
- A low-profile stealth antenna on a short lead: a flat dual-band (2.4 and 5 GHz) element that sits on a dash or rear shelf without looking like a radio.
- A short USB data cable. The board draws under 250 mA, so any car charger, power bank or spare port runs it.
- A card with the pairing steps and the name the board advertises under (Wavelens-XXXX, where XXXX is the end of its Bluetooth address).
Optional at checkout: USB extension cables (1, 2 or 3 m) so the board can sit by a window while the power is elsewhere. The car roof antenna kit ($49) is sold out for now.
The antenna mod
Most ESP32 boards have their antenna printed on the circuit board: a zig-zag of copper a centimetre long. It works, but it's the weakest part of the radio, and it's omnidirectional in the worst way, hearing the board's own noise as well as everything else. The -U boards replace it with a u.FL socket. Spotter uses that socket for an external antenna, which does three things:
- Gain. Even a small external element is several dB better than the PCB trace, and a Yagi or panel on the same socket is 8–12 dB better. Each 6 dB roughly doubles the range.
- Placement. The antenna goes where the signal is (dash, rear shelf, roof), while the board stays wherever the power is.
- Nothing between it and the air. A phone in your pocket is behind your body, which soaks up 2.4 GHz; a phone on the seat is inside a steel box. The stealth antenna sits against glass.
In practice: a body-cam hotspot a phone hears at the kerb, Spotter on the dash hears a block earlier. The exact figure depends on the car and the antenna, which is why Does it work? publishes measurements instead of claims.
What it hears
The firmware does two things at once and never connects to anything:
- Wi-Fi beacons. Every access point and hotspot announces itself several times a second. A phone sees those announcements once per scan, about every forty seconds, and only on the channels Android chooses. Spotter sits on a channel, 2.4 or 5 GHz, and hears every beacon on it. That's how it catches a hidden-SSID body-cam hotspot that's only in range for a few seconds.
- Bluetooth LE adverts. Trackers, wearables, telematics boxes, fleet dash cams and drones broadcasting Remote ID all advertise over BLE. Spotter scans continuously and relays each advert with its address, name and payload, so the same signatures that run on the phone run on what it hears.
Each hit goes to the phone as one line of JSON over Bluetooth LE. Wavelens treats it like its own packet: same 270-plus rules, same confidence levels, same alerts, history and map. On the HUD it just means an alert arrives earlier.
Channel parking
By default the board hops Wi-Fi channels 1–13 so nothing is missed. In Wavelens, Companion radio → Park for body cams & radios pins it to channels 1, 6 and 11, where body-cam and in-car hotspots live, and keeps Bluetooth on. The phone sends the command; the board obeys until told otherwise. The Spotter is an ESP32-C5, the one 5 GHz-capable board, so the same command can also park on a 5 GHz channel, which is where some newer body-cam docks sit.
Set-up for your area
At checkout you tell us the city, state or province and country you'll use it in. Before it ships we load the matching pack on the board's companion settings and check that the phone-side pack is available for you to import. For most US buyers that's the built-in settings; for anyone else it means local band names and local device rules from day one.
Putting it in a car
- Plug Spotter into USB power. The LED blinks twice at boot.
- Put the stealth antenna where it sees out: dash against the windscreen, or the rear shelf. Not the glovebox and not under a seat; metal between the antenna and the road costs more than any antenna gains.
- In Wavelens open More → Companion radio, tap Find, then Pair on Wavelens-XXXX.
- Choose Park for body cams & radios if that's what you care about, or leave it hopping.
From then on it pairs itself every time the phone comes within range, and the companion screen shows its hit rate alongside the phone's.
What it doesn't do
Spotter hears Wi-Fi on 2.4 and 5 GHz, and Bluetooth. The C5 build is new, so tell us how yours does. It can't hear 433 or 915 MHz (tyre sensors, remotes), the public-safety bands, or 5.8 GHz video. Those are what the Raspberry Pi companion in Full Spectrum is for. It never transmits, never joins a network, and never pairs with or connects to anything it hears. Its only link is Bluetooth LE to your phone, and nothing it hears leaves the phone.
Or build it
The firmware is open. A $10 board, a USB cable and twenty minutes with PlatformIO gets you the same thing; Spotter is for people who'd rather not.
Order it today, drive with it this week
Every unit is flashed, set up for the area you give at checkout and tested before it ships. Free shipping in the US, $25 flat everywhere else, updates free for life. The Spotter ships cased; Full Spectrum is the whole car in one box.
Shop companion radios Join the free Android beta
Open firmware and bridge on GitHub · receive only · every command on this blog is copied from a Pi we run