Start here
Requirements and compatibility
Android version, controller, Google Play services, permissions, and 3D coverage.
FPV Map is an Android app. The validated setup is a DJI Avata 2 controller combination, but the app can be explored with no controller at all.
Device requirements
| Requirement | Detail |
|---|---|
| Android | 8.0 (API 26) or newer. |
| CPU | arm64-v8a only. 32-bit devices are not supported. |
| Google Play services | Required. The Maps 3D SDK depends on it. |
| Network | Required to stream the 3D map and search for places. |
| Location | Optional. Used to anchor the world to your current position. |
| USB host / OTG | Required for the DJI RC 3. A data-capable cable is required; charge-only cables do not work. |
| Tested phone | OPPO CPH2457, Android 14. Other devices are untested. |
Controller compatibility
The validated controller is the DJI FPV Remote Controller 3. It enumerates over USB as
0x2CA3:0x1021 ("DJI Virtual Joystick") and exposes a 13-byte HID input report at roughly
198 Hz. The app decodes the sticks, the gimbal dial and the front-panel buttons.
The app is read-only toward the controller. It never sends commands to an aircraft and never flashes firmware. Test with no powered aircraft connected.
Not a generic gamepad app
Permissions
- USB permission — Android asks when the RC 3 is first connected. Grant it for the current session.
- Location — optional, used to anchor the map. Denying it does not break searched locations.
- Microphone / media — only if the screen recorder or photo capture needs it on your Android version.
- Notifications — used by the foreground screen-recording service on newer Android versions.
3D map coverage
Google Maps 3D provides terrain worldwide, but photorealistic building surfaces exist only in meshed areas. If a city looks flat, that is usually a coverage limit rather than a loading bug.
The documentation and demos use the Transamerica Pyramid and the Financial District, San Francisco, which has photorealistic building coverage. In the Philippines, coverage is limited to Cebu City and Davao; Metro Manila may appear flat.
Map loading and cost guardrails
Maps 3D loads are metered by Google. The app hides the SDK's cold start behind a progress card, caps automatic map-initialisation retries at three, and stops retrying while the app is backgrounded. If the map cannot load, use the manual retry rather than repeatedly recreating the view.
What is optional
- An account. Everything works signed out; signing in only adds manual plan sync and share links.
- A controller. The virtual sticks are a complete input method.
- Location permission. Search works without it.
Related guides
About the screenshots
Every screenshot and demo in this documentation was captured in FPV Map over the Transamerica Pyramid and the Financial District, San Francisco.
FPV Map is a simulator. It never sends commands to an aircraft, and virtual rehearsal is not a substitute for legal checks, a site survey or safe piloting.
Found a mistake or something that no longer matches the app? Report it.