RTK GPS Takeoff and Landing AMSL altitude varying too much from same point

Firmware
ArduCopter 4.1.0-dev

Board
Pixhawk 2.4.8

GPS
Here+ RTK

Setup
Flying quadcopter in guided mode with RTK GPS having base station accuracy of 0.5 meters and selected RTK GPS as primary altitude source

Observations
RTK GPS Takeoff and Landing AMSL altitude varying too much from same point, also quadcopter going down uncommanded when given a command to maintain same altitude throughout the flight but RTK GPS not showing the loss of altitude correctly

Need Help
Not able to find what causing this issue, i doubt if anyone can predict if copter actually losing altitude by even looking at this log, most of the flights generally going well but in some flights this issue has been observed few times, what can be possible reasons which causing this and what can be done to avoid it ?

LOG
https://drive.google.com/file/d/1WJDbt9Uopj3huSWrs_5j7Jm-lDopu5jI/view

Is RTK in fixed mode while flying? If not than Float can be very unprecise, up to several meters, expecially on altitude. If you want RTK to be very precise you have to be in fixed all the time. During RTK float the accuracy reported is not trustable.

I’m surprised your flight controller continues to function, Vcc is going so low I’d expect the FC to fail.


And Vservo strangely mimics the Vcc - you definitely should NOT have Vcc (the 5 volts supply to the flight controller logic) connected to the servo supply rail. Use a separate BEC to supply the servo rail and any telemetry radios or additional high power devices.

There is an awful lot of pitch and roll oscillation. I dont think the correct tuning has been done, if at all.
Set these to start with:
ATC_RAT_PIT_P,0.15
ATC_RAT_PIT_I,0.15
ATC_RAT_PIT_D,0.005
ATC_RAT_RLL_P,0.15
ATC_RAT_RLL_I,0.15
ATC_RAT_RLL_D,0.005
Then run through these:
https://ardupilot.org/copter/docs/tuning-process-instructions.html

You need to get the copter flying correctly first then go for your Guided and Auto modes + customisations.

1 Like

how can i make sure that my GPS status remain in RTK fixed throughout the flight time ? cause right now it automatically keep switching between RTK float and RTK fixed

gotcha, gonna work on the build setup and tuning again, will come up with more updates soon

The M8P GPS in the HERE+ sometimes takes some fiddling to maintain an RTK fix. Long but informative discussion about it here.

But even with RTK fixed, the altitude is usually not too reliable - a 2 meter difference from absolute is not uncommon. So as far as your altitude problem goes, I suspect that’s what you’re seeing. I’m not surprised that it changed a bit after taking off, although it will probably stabilize once you get some more altitude.

Is there a particular reason you want to use GPS altitude as the primary source? In most cases, the barometer will be more trustworthy, unless you are going to do a very long flight where changing weather or climate might cause it to drift.

An additional theory is that your oscillations are confusing the GPS’s vertical velocity estimation:

I think this is quite possible if your GPS is not at the center of rotation of the aircraft. There’s actually parameters to set the position of your GPS antenna to help correct this. But of course, you should fix the oscillations first.

Yeah, we do want some reliable altitude performance repeatedly and for long flights as well, but hearing that even a 400$ Here+ RTK GPS isn’t good enough to provide altitude accuracies within 1 meter is not motivating, i agree we probably missing some steps to use RTK GPS properly

we also tested flights with baro as well, generally some baros like on pixhawk 2.4.8 are good and provide good estimates but some other baros like BMP280 doesn’t seem to perform that well, overall we thought RTK GPS can really provide good altitude stability like within or around 0.5 meter, we need that much of accuracy cause we are trying to fly multiple drones in a swarm, where they can have a tendency to come close with each other as well

Thanks for the inputs, we already started working with properly setting up the quadcopter first, will provide more updates soon

@xfacta @Anubis we have made 2 changes in the setup, earlier we used to power pixhawk by connecting the UBEC to pixhawk servo rail, now we are giving power to pixhawk from its power port, second change is that we were not doing autotune before, now according to this tuning instructions https://ardupilot.org/copter/docs/tuning-process-instructions.html and @xfacta’s spreadsheet to set initial parameters we have tried autotune to try to resolve the oscillation issues with roll and pitch but looking at the ATT.Roll and ATT.Pitch logs now i am not sure if it’s getting better or not, can you please check this latest log for both Power and Attitude with the above changes and give some inputs, thanks

https://drive.google.com/file/d/1Uv1WcDoNrQ-PDXREp95yLgzdTfkIxW5X/view?usp=sharing

My quadcopter weighs 700 grams with battery and using 7 inch props, this is the parameter file after autotune

PARAM_MAIN_autotune.param (14.6 KB)

Did you set the Dynamic Notch filter parmeters befor autotune???

nope, never manually set Dynamic Notch filter parameters before

The problem with accuracy during RTK is that GPS must stay in fixed all the time, otherwise alt will jump when going from fixed to float and vice versa. Here+, being an L1 receiver is just not up to the task in real world applications. You need an L1/L2 F9 receiver to have a stable fix.

thanks for the inputs, others also suggested the same, next time we probably try some F9P RTK GPS, we still trying everything from our side to test Here+ RTK GPS in best possible configuration, currently left it for a survey, 30 hours up and almost achieved 0.1 meter base station accuracy, then will try to see what else needs to be done to achieve a stable fix

Just FYI we have been using F9P for almost an year now with correction coming trough an ntrip service. It usually goes to fixed in under 20 seconds and stays there all day long. In the last 10 days of work i have seen it in FLOAT prob no more than a couple of minutes.

i have some updates, so i autotuned my drone this time and i observed that these roll and pitch oscillations are occuring cause of the way i am giving navigation commands to my drone in guided mode. When flying in poshold mode after autotuning these oscillations in roll and pitch does not occur, it’s occuring mainly cause i am giving a new waypoint after every 2 seconds. Is there can be any problem if i fly my drone in this way, cause i think these oscillations happening cause drone keep jerking while moving in guided mode ?