GETTING STARTED GUIDE
Essential guides for setting up and operating MAVLink GPS.
Android
Deconstructing Doze Mode
Many developers (and pilots) believe that simply showing a persistent notification (Foreground Service) makes an app immune to Android's power savi...
Dual-Frequency GNSS (L1/L5)
For indoor-adjacent or transition-zone flight (stadiums with open roofs, glass atriums), the physical GNSS chip in the smartphone is the primary bo...
GNSS Raw Measurements (RTK Feasibility)
A common question in the ArduPilot community: *"My phone has L1/L5 GPS. Can I use it as an RTK Base Station for my drone?"*
Inside the Fused Location Provider (FLP)
When you ask Android for `ACCESS_FINE_LOCATION`, you aren't just turning on a GPS chip. You are engaging a massive, multi-sensor fusion engine call...
Mastering USB Permissions
One of the most frustrating aspects of using Android with custom hardware is the relentless permission popup:
Position Solvers & Safety Gates
Ranging is only the first half of the equation. To fly, the Android app must solve for $(x, y, z)$ given the distances $(d_1, d_2, d_3, \dots, d_n)...
The "Throttling" Problem
For the last decade, Android updates have had one primary goal: **Battery Life.** The biggest enemy of battery life is the GPS chip. To combat this...
The WiFi Scan Throttle
Users often notice that while outdoor GPS updates at 5-10Hz, the indoor "Network Fusion" position sometimes stutters or updates slowly (e.g., once ...