How can I optimise the stabilization of my indoorloiter hover?

  1. How can I optimise the stabilization of my indoorloiter hover?
  2. Is it possible to have an accurate stable hover (hanging still mid air)?

Video testflight:

Dataflash Log:

Project Link:

We did some testing with Pozyx. As it shows the drone doesn’t show the right altitude height from the barometer, which makes sense if you think about how the barometer works.

That brings us tot he real problem thats the minor drifts and corrections. The positioning on the maps looks sort of accurate with it’s actuall behaviour. The positioning is worrying me a bit, maybe its getting too many different BCN positioning reads, because I have made the update refresh rate from the tag & anchors pretty high. From testing it showed some faillures in the past with lower update refresh rates. This may be causing all the movements on the map, while in reality the drone is not moving all the time. Back when I tested only with the Pozyx and Arduino. The beaconing systems was giving a lot off different reads by an inaccuracy of plusminus -10 to 10 centimeters. The average is being calculated on 15 reads every second atm if I’m not mistaken.

The z-axis(vertical, height) measurements is not being used on the Pixhawk, because the z-axis measurements from the Pozyx is going negative during movement and needs quite some time to get an actual good/accurate read and even then it’s off with 20cm under or above the real height. As I contacted Pozyx about this, they admitted that the z-axis is not that accurate as the x-axis & y-axis and is using a different algorythm which is not finetuned yet.

Having a stable hover is necessary for my project and I try to find out if it’s even possible to have it hoovering completely stable in a Loiter/AltHold flightmode indoors? Did anyone already achieved this, if yes how? Did they use a Lidar/ OpticalFlow sensor or is this unneccesary to get a stable hoover? Which Parameters do I need to optimilase my current setup.

Drone setup:

  • PixHawk 2.4.8
  • Ublox M8N GPS Module (for external compass use)
  • I2C Split board
  • I2C USB module
  • Pozyx shield with Arduino


Anchor setup:

UWB settings/ update refresh rate: channel 2, bitrate 850 kbit/s and preamble length of 64

DataFlash Log:


I guess we both are doing the same loop. I have used lidar as well. But as you know I have issues in X and Y direction.

Maybe you can use ultrasonic navigation system for the drones, with Ardupilot/pixhawk support?

this is the video how it works - Precise (±2 cm) indoor tracking in XYZ without GPS/GLONASS -

Marvelmind Robotics coupon code srg_a55k_3

Hi, did you make any progress? Also for the z-axis? When looking at my logs, the scale seems wrong. When a distance should be 2m, it is displayed as 0,02m. Do you have the same issue? Thank you!

In addition, I have a question regarding the setup of the anchors. In the wiki, the x-axis points up, ideally to the north. That would mean for a right hand coordinate system, that y points right and z points down. That would lead to smaller values as the drone ascends. IS that accounted for tin the controller? Thank you!