Twitching/jerking repeating motion in forward flight (loiter) and fail to recognize landing after 4.3.0 update

Hi,

I just updated my quad to 4.3.0 and took it for a test flight to see how it would perform with the new firmware. To my disappointment there was some strange behavior which I don’t understand the origin of. I took a look at my logs but couldn’t find anything. Also, this quad flew fine with 4.2.2 and no parameter changes have been made between firmware updates.

Description of issue:
First at takeoff. My quad makes like a jump into the air. I raise the throttle slowly like I always do. Usually the quad starts to ascend slowly but this time it made like a jump into the air. Like a meter or so until it slowed down and preceded to ascend slowly according to my throttle input.

Next, when I switched into loiter and started to fly slowly forward, he quad would make jerking pitch movement like every couple of seconds. Not too big of a motion but about 10 degrees. Like an autotune twitch but during forward flight. I wouldn’t do this while hovering.

Last, since it was unsafe to continue the flight I tried to land. I put it down as gently as I could, just as always. When it had touched down it wouldn’t recognize the landing and slow the motors down like it usually does. I than took it up again and tried to make a more firm landing. This time it would recognize the landing after sitting on the ground for a couple of seconds.

Good to know:
I use GPS for altitude because of aerodynamic effects on this frame.

Log file:
https://drive.google.com/file/d/1ExF5mPTyC_zrijPFb-obLBTroC7ZP8Q9/view?usp=sharing

Thanks!

The only thing I found in the documentation about 4.3.0 that was interesting was the parameter about gps altitude estimate accuracy. Although I’m not using that parameter and I don’t see how that one could cause this type of issue

There was some filter changes. Maybe that could cause this?

Hello @Axel1

I am not an expert on this kind of trouble, but two things called my attention at your log:

  • You have experienced an Internal Error during flight, and it is not a good thing, never saw this fault code… maybe it is interesting for the devs to take a look on it.
  • Have you ever ran an autotune on this drone? It seems to me that your attitude controller params are very default…

@xfacta could you help our friend?

I can see in the log what you mean about the jerking pitch movements while flying forward in Loiter
This is a good log for us to see this issue, so I hope you dont mind trying a few things in order and gathering each seperate log.

First just change this
PSC_VELXY_FLTD,5 down to new value of 2.5
Observe and gather log, If that fixes it great - no further action.

If it’s not resolved just change this
PSC_VELXY_FLTE,5 down to new value of 2.5
Observe and gather log, If that fixes it great - no further action.

If there’s still no fix, try these
PSC_POSXY_P,0.5
PSC_VELXY_D,0.25
PSC_VELXY_I,0.5
PSC_VELXY_P,1.0
They are not very different, but slightly lower than yours. At least they wont introduce any further undesired effects.

2 Likes

Hello all,

As @Axel1 mentions - after updating one of my copters to FW4.3.0-stable I also noticed the different ‘jump’ take-off behaviour in ALT-HOLD & LOITER. This behaviour was not present on FW4.2.3-stable. I’ve not looked into it any further as it is not a problem since all is fine once the copter is about 1m off the ground. I have not seen any other issues and the copter flies as expected - if not better.

This copter has a downward facing rangefinder.

I’ll take a look at the recorded flightlogs and see if I can spot something regarding this take-off behaviour.

1 Like

Hi Bruno,

I’ve ran an autotune and pulled the value back a bit. It flew well on 4.2. Yes the param are very default but I started with the initial setup and the autotune and manual tuning has led me here.

I missed the internal error. I checked error codes but nothing showed up. Maybe I need to look somewhere else. When did the error occur? At the end of the flight or in the middle?

Thanks!

Hi Shwn,

This craft is made for testing and learning more about ardupilot so some testflight won’t be an issue!

I’ll try and set the parameters you suggested in that order and gather logs.

Are these filters new for the pos controller? That could explain why this suddenly appeared.

Also, what does this filter actually do? Why would changing that fix this, if you got the time to explain?

Edit: Should I set my EK3 altitude source back to barometer. Since that’s the most common one? I want to use gps when the issue is resolved but for the tests, what would be best?

So that may be normal than. I guess it’s because people would raise their throttle t slowly and the copter would start to tilt on the ground. Or in case you start on uneven terain.

Thanks!

1 Like

I found this in the 4.3.0 documentation, TKOFF_SLEW_TIME. This parameter is used to control takeoff speed. Maybe the default value is quite jumpy.

1 Like

I’ve conducted a second test flight using the PSC_VELXY_FLTD you suggested. It didn’t solve the issue. I got an internal error. I don’t know what that particular one means so for safety reasons I decided not to continue to test the rest of the parameters until I know what the internal error means. See in detail below

Log file: https://drive.google.com/file/d/14uZRf9g8-GhHSG_-BvS0AFAEev7r67MT/view?usp=sharing

I’m unsure of the message “I” as well. The picture shows the flow of messages after landing.

Flow of manuvers:

Arm, than takeoff

The jump motion on takeoff is still there, this should be normal.
Landing gear folded up.

I hovered in alt hold for about 30 sec than flew around a bit just so that there is some maneuvering in the log to.

Next, I switched to loiter at around 1min 30 sec

30 sec hover in loiter

Than forward flight, stop, than backwards flight.

During the flights there was jerking but more of them. They seemed smaller in angle but larger in quantity. The jerks appeared as both forward and backwards jerk during the backwards flight.

Landing, the jerks became worse during the decent so I switched to alt.hold and landed. The landing was detected this time but that might have been because I switched to alt.hold. I don’t remember if I landed in alt.hold in my previous flight.

…flow_of_ctr
Using GPS for Yaw?

No, confusing this with rover.

no, i’m using gps for altitude though.

I need two gps units to use gps for yaw right? I only have one here2. Also, what parameter should I check to make sure the drone wont try to use gps for way??

Nevermind. It’s on the issues list which is combined for Copter and Rover. Not applicable.

1 Like

ah okay, but what could it be in my case? if you have any clue?

Thanks!

No, but it’s the 2nd of the same error I have seen today.
Yours:
Error 1

Another one:
Error 2

1 Like

Could it be an unnoticed bug in 4.3? It has gone through some a lot of testing in beta but as stable release a lot more are using it.

Not sure. There was some tracking of this error as it applied to H743’s and it was fixed in a release. But these are not H743’s… It was a loop/timing error.

There is a new Rover post with the same error.

1 Like

Is there anything I can do to check or let anyone else check if it’s a timing error?

Has rover been updated recently as well?

Yes, everything is on the same release schedule more or less.

I suppose create a new post with that error in the title.

I’m working remote for some months and unfortunately I don’t have any RC hardware at hand to test stuff on. Feels a bit naked…

1 Like

Ok, I’ll do.

Xfacta haven’t answered yet so maybe he knows something. Is there anyone I should tag in that post who have the necessary means to investigate further.

I can do tests for the developers but my knowledge is too limited to solve this myself