Mavlink ignores yaw

Product: Bebop 2
Product version: [Latest firmware]
SDK version: [3.11]
Use of libARController: [YES]
SDK platform: [iOS]
Reproductible with the official app: [YES]

I’m trying to move my drone to an initial location using one line in a mavlink file. It respects the lat, long, alt of the command but doesn’t change yaw at all. I know this command works because used with many mavlink commands the yaw is changing. Why would that be? Thanks

QGC WPL 120
0 0 3 16 0.000000 5.000000 0.000000 145.692062 41.777092 -88.236809 1.000000 1

Hi,

I need to forward this to the team in charge, I’ll let you know when I have more information. This might be because the orientation is changed after the waypoint is reached.

Best regards,
Djavan

It is indeed due to the fact that the drone will change its orientation just before going to the next waypoint. On solution would be to add an other waypoint.

Regards,
Djavan

That is exactly what I do.

Another option is to enable progressive orientation and set a waypoint between your origin and destination at a distance you’d like to ensure the requested yaw orientation is achieved.

Setting a waypoint with the same cooridnates as your origin with the desired yaw orientation will cause the drone to pause momentarily. Doing it with progressive orientation makes it a bit more smooth.

1 Like

Cool thanks guys, @synman where is progressive orientation in the docs? I have the worst time finding stuff lol.

It is not in the docs. I found it by reverse engineering the mavlink files produced by FreeFlight.

Perhaps this snippet will help (it is from my app):

// create this mission item before your waypoint mission item to enable progressive orientation
final ARMavlinkMissionItem view = ARMavlinkMissionItem.CreateMavlinkSetViewMode(MAV_VIEW_MODE_TYPE.VIEW_MODE_TYPE_CONTINUE, -1);
generator.addMissionItem(view);

— or —

// create this mission item before your waypoint mission item to enable fixed orientation
final ARMavlinkMissionItem view = ARMavlinkMissionItem.CreateMavlinkSetViewMode(MAV_VIEW_MODE_TYPE.VIEW_MODE_TYPE_ABSOLUTE, -1);
generator.addMissionItem(view);

You only need to set it once. All subsequent waypoint mission items will use the value you last set.

So good news bad news. Turns out setting the view mode to continue means you don’t need to add more than one waypoint, it just works with one.

I found it looks most smooth by doing mavlinkViewMode aboslute, destination location, mavlinkViewModeContinue, destination location.

Bad news is that for some reason my drone wen rogue and is now lost. I don’t understand what happend, I basically have the mavlink start position recorded and had been sending the mavlink file over and over with the same coordinates. For some reason this last time it ascended to about 30 feet and took off in a direction and never came back. This doesnt seem possible since I’ve been sending the same mavlink file over and over with no issues. I’m calm right now because I’m still in shock, but I guess if my app doesn’t make any money I’m out of the drone business. I can’t keep buying the same drone over and over.

I own 2 AR.Drone V1s, 2 AR.Drone V2s, 1 V1 Bebop, 2 V2 Bebops, and 1 Disco (yet to fly it).

Over the years I’ve had 2 AR.Drone flyaways and 2 V2 bebop flyaway. In all of those instances Parrot agreed to replace 1 drone (a B2). I did have a completely unrelated warranty issue with my B1 that parrot addressed, but for the sake of fly aways, unless you can prove without any question that it was not an application issue it is very unlikely Parrot is going to help.

Anyone want to buy an AR.Drone or two? :slight_smile:

Yeah they graciously replaced a B2 for me but I was flying it with FFP over water. This time was my app so I doubt I’ll get any help. It’s a shame because when programming for drone piloting I should probably tether it to the ground. Anyways, I guess it’s a sign if I don’t make any money then it’s over and I probably wasted a year of my life. If I do, then I have no problem buying a new one. We’ll see I guess.

Colin Meavy (pretty sure that his name – Meavydev ARFlight Pro) pioneered tethering ARDrones with a fishing line.

@ Slobdell we seem to suffer from the same problem and find it difficult - in the context of a complex (multi-waypoint) mission - to precisely interpret:

"Turns out setting the view mode to continue means you don’t need to add more than one waypoint, it just works with one.
I found it looks most smooth by doing mavlinkViewMode aboslute, destination location, mavlinkViewModeContinue, destination location."

Could you clarify whether:

  • mavlinkViewMode aboslute needs to happen before the first waypoint?
  • mavlinkViewModeContinue need to happen before the first, every, last waypoint?

ideally if you could please paste the relevant fragment of the MAVLINK plan.