Skip to content

[Feature Request] Wi-Fi Compass — directional signal finder for locating access points #611

@obtim

Description

@obtim

Short title

Add a new screen to WiFiAnalyzer — a visual compass that guides the user toward the physical location of a selected Wi-Fi access point, similar to how Opensignal's "Find signal" feature works for cellular base stations (see attached screenshot).

Is your feature request related to a problem? Please describe.

Motivation
Currently, WiFiAnalyzer shows RSSI/signal strength numerically and on charts, but gives no directional hint about where the router or AP physically is. This is frustrating in real-world scenarios:

Placing a router optimally in a large apartment or office
Diagnosing coverage dead zones and finding the closest AP
Locating a rogue/unknown access point on the network
Troubleshooting a hidden or moved device

Proposed behavior

  1. The user selects a target SSID/BSSID from the existing AP list.
  2. A new "Compass" tab/screen opens showing:
  • A large circular compass widget with a directional arrow
  • The arrow rotates based on the device's magnetometer (compass heading) combined with the RSSI gradient — it points toward the direction where signal strength is currently increasing
  • A real-time RSSI bar or dBm readout below the compass
  • An optional signal strength "pulse" animation that speeds up as the user gets closer
  1. The user physically walks around; the arrow guides them toward the strongest signal point (the AP location).

Technical approach (suggestion)

  • Use SensorManager + TYPE_ROTATION_VECTOR for device orientation (more stable than raw magnetometer)
  • Poll RSSI continuously via WifiManager.calculateSignalLevel() or scan results
  • Direction estimation: track RSSI delta as the user moves; the arrow points in the heading that produced the most recent positive RSSI delta (gradient ascent approach)
  • Optional enhancement: store a short history of (heading, RSSI) pairs and compute a weighted average direction

UI reference
The Opensignal app (screenshot attached) implements exactly this UX for cell towers — a compass circle with a rotating arrow and a small tower icon on the ring indicating the target. A nearly identical interaction model would work for Wi-Fi APs.
Acceptance criteria

  • New "Compass" tab appears in the bottom navigation
  • User can select a target AP (defaults to currently connected network)
  • Compass arrow updates in real time as device orientation and RSSI change
  • RSSI value / signal bar is visible on the same screen
  • Works without GPS/location permission (uses only Wi-Fi RSSI + magnetometer)
  • Graceful fallback message if device has no magnetometer

Describe the solution you'd like

No response

Alternatives considered

No response

How I can help

No response

Reproduction / Occurrence frequency

None

Priority / Impact

None

Device model

No response

Android version

No response

Android API level

No response

WiFiAnalyzer version

No response

Build variant

No response

Additional context

No response

Screenshots / Mockups / Attachments (optional)

No response

AI Assistance

AI tools were used to help write this request

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions