LiDAR & Altitude Hold
The Verticality Gap
While Wi-Fi RTT is excellent for Latitude/Longitude (X/Y), it is physically unreliable for Altitude (Z). In a stadium, ground reflections and poor anchor geometry create "Altitude Jumps" that can crash a drone.
To fly safely indoors, you must supplement the Android phone with a dedicated downwards-facing rangefinder.
Recommended Hardware
1. Benewake TF-Mini Plus
- Weight: 12g (Ultra-light).
- Range: 12 meters.
- Interface: UART / I2C.
- Verdict: Best for small to mid-sized indoor drones where every gram counts.
2. Garmin Lidar-Lite v3/v4
- Range: 40 meters.
- Reliability: High performance over varied surfaces (grass, concrete, polished floors).
- Verdict: The gold standard for professional stadium flight.
ArduPilot Integration
Once the LiDAR is wired to your Flight Controller's TELEM or I2C port, set the following:
- RNGFND1_TYPE = [Sensor Type]
- RNGFND1_MIN_CM = 20
- RNGFND1_MAX_CM = [Max range of your sensor]
- EK3_SRC1_POSZ = 2 (RangeFinder)
By setting the EKF3 source to RangeFinder, the drone will ignore the "noisy" altitude data from the phone's GPS stream and lock its height to the solid physical floor. This prevents the "pumping" effect and ensures stable Loiter performance even if Wi-Fi signal quality fluctuates.