Back to Docs
HollowMap

HollowMap

Wi-Fi survey and coverage mapping for a property — server, web UI, and mobile collector.

How it fits together

  • Server + desktop app (Windows) — runs on a machine wired to your network, hosts the map and reports, stores samples.
  • Any device (phone / tablet / laptop) — connects over Wi-Fi to record a survey. No install; it's a web app. A native Android collector is in progress.
  • Controller (optional) — a UniFi or Omada controller enriches each sample with the AP and signal each client sees. Without one, HollowMap records GPS-only.
1

Getting Started

01 Run the server where it belongs

Run the HollowMap desktop app on a machine that is wired to your core switch or router. The in-app speed test measures the Wi-Fi link between the walking device and the server, so a wired host keeps the server from being the bottleneck and gives representative numbers.

Running the server on a Wi-Fi laptop puts two wireless hops in the path and skews results.

02 Optionally connect a controller

Open Settings in the toolbar and pick your controller type — UniFi, Omada, or None. With a controller, samples are enriched with the AP and signal each client is on. With None, HollowMap records GPS-only.

03 Connect a device and walk

Click Connect device, scan the QR code with a phone or tablet, and open the page. Tap record and walk the property.

04 Review on the map

Back at the desktop, open Map to see your samples, switch color modes (signal, speed, humidity), and find dead spots.

Config lives at: %LocalAppData%\HollowMap\config.env — controller URL/credentials, property lat/lon, poll interval, SOURCE=unifi|omada.
2

Connect a Device

Any device on the same Wi-Fi — phone, tablet, or laptop — can open HollowMap to record a survey, with no install.

  1. 1.On the desktop, click Connect device in the toolbar.
  2. 2.Scan the QR code with a phone/tablet camera, or open the shown URL (https://<lan-ip>:9444) on any device. Copy and Email it are right there too.
  3. 3.The first time on a phone you'll see a security warning — tap Advanced → Proceed. This is expected: the LAN server uses a self-signed certificate. HTTPS is required because browsers only expose GPS in a secure context.
  4. 4.The device appears under Connected now within a couple of seconds, with its detected type (iPhone, Android, …).
Doesn't appear? Confirm it's on the same Wi-Fi / subnet as the server and you got past the certificate warning. See the troubleshooting section below.
3

Record a Survey

Logs GPS-tagged signal samples as you walk, so the map shows coverage where you actually went.

  1. 1.Open HollowMap on the device.
  2. 2.Allow Location when prompted — GPS is required to place samples.
  3. 3.Tap Record and walk the area. Samples log automatically as you move; the screen shows the current AP, signal, GPS accuracy, and point count.
  4. 4.Optionally tap Speed test here to attach a download/upload/latency measurement to a point. This measures the Wi-Fi link to the server, not your internet speed.
  5. 5.Tap Stop when done.
Notes
  • iOS can't expose the phone's own signal; with a controller, HollowMap uses the AP's view of your device instead.
  • • A run label lets you compare separate walks (e.g. before-mesh, humid-day).
4

The Coverage Map

Your recorded samples on a satellite map, colored by the metric you choose — so dead spots and roams are obvious.

🎨 Color

  • Signal (RSSI) — the default; green = strong, red = weak.
  • Speed — download Mbps from speed tests. Dots are grey where no speed test was recorded, so switch to Signal if everything looks one color.
  • AP / Device / Humidity — color by access point, device, or humidity.

🖼 Layers

Toggle dots, path (your track), APs, and the heatmap.

🔍 Filters

Narrow by Device, Run, and a date range. The date filter applies as soon as you change it — no Apply button; the × clears it.

Lines

The faint line through the dots is your walk path. The straight rays from AP pins show each AP's aimed direction.

?

Troubleshooting

"Your connection is not private" / security warning on the phone
Expected. The LAN server uses a self-signed certificate — tap Advanced → Proceed. HTTPS is required because browsers only expose GPS and the compass in a secure context.
The device doesn't show under "Connected now"
  • • Make sure the device is on the same Wi-Fi / subnet as the server.
  • • Make sure you got past the certificate warning.
  • • If the host has several network adapters, use the address the dialog lists first (192.168.x.x). Virtual adapters (Tailscale, Hyper-V/WSL) won't be reachable from the phone.
GPS won't start / "allow Location"
  • • Grant the site Location permission in the browser.
  • • GPS needs HTTPS — open the https:// address, not http://.
Speed test numbers look low
The speed test measures the Wi-Fi link to the server, not your internet. Run the server on a wired machine so it isn't the bottleneck (see Getting started).
Q

FAQ

Do I need a UniFi or Omada controller?

No. With a controller, samples are enriched with the AP and signal each client is on. Without one, set the controller to None and HollowMap records GPS-only.

Does the speed test measure my internet?

No — it measures the Wi-Fi link between the device and the HollowMap server on your LAN. That's what a coverage survey wants.

Can I survey with just the laptop running the server?

A Windows laptop can read its own Wi-Fi signal, so laptop-only surveying is possible. It can't see other devices' signal — that's what a controller is for.

Does it work on iPhone and Android?

Yes, in the browser. iOS can't expose the phone's own signal (HollowMap uses the controller's view instead) and asks once for compass permission. Android exposes more directly.

Where does my data go?

Nowhere — it's stored locally in SQLite inside the server's data folder. Your LAN, your data.

Is there a native mobile app?

A .NET MAUI Android collector is in development. Today, any phone browser works.

System Requirements

Windows 10 or 11 (x64) for the server
WebView2 (Windows 11 has it built in)
Wired LAN connection recommended
Any modern phone / tablet browser

Ready to map your Wi-Fi?

An unhandled error has occurred. Reload 🗙

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please reload the page.