Plausibility of Different Method to Move Drone with GPS


Hello all,

A thought recently occurred to me: could I move the drone to an explicit GPS location using the relative movement function?

For example, if I want the drone to move to coordinates [30,90], could I use the drone’s current coordinates, say [25,70], and then move the drone relatively [5,20] to get to the desired final position?
Or is there a better, yet similarly simple, way to do this?

Thank you


Sure. Other option is to just send a mavlink file with with a move to command with the exact gps coordinates you want it to go to. No math involved.


Thanks for your reply Slobdell,

I’m still learning the intricacies involved with drone development. Could you elaborate what the MAVLink file would look like and how I could send it to the drone?


If you search for mavlink on the forum you will find a lot of good resources. Basically it will involve creating the file in the right format, uploading it to the drone via ftp, then sending a start mavlink command to the drone for the file you just uploaded.

Sorry, I would get more into it but it’s been pretty heavily discussed so you shouldn’t have a problem getting the info from searching between user input and the Parrot devs pointing people in the right direction.



Great, I’ll look into it - thanks again for your help!


I’ve since looked extensively into the forum’s mention of mavlink and have greatly increased my knowledge reading through the posts, however I am still unsure of a few things.

To create the mavlink file, I know that I must create mission items using ARMAVLINK_MissionUtils, however what would the C implementation of this look like? I’ve tried to mirror your Objective-C example however I am given the error of an unknown type name for ARMAVLINK_FileGenerator_t *generator.

How could this be done in C? I am testing the creation methods for mavlink files from within one of the samples, BebopPilotingNewAPI, and have imported the necessary header file, libARMavlink/ARMAVLINK_MissionItemUtils.h.
From here I have the necessary code in a function that is set to execute on a certain key press to help in my debugging.

Thank you for your assistance


The filegenerator class has it’s own file. You should remove any existing mavlink headers and include the umbrella file, this will pull in all the necessary mavlink header files.


I think that should fix your issue.