Offboard Control - MAVROS

I am working on doing external control of an autopilot using an onboard linux computer running MAVROS. I found the topic on mavros entitled "setpoint_velocity," But when I send that to the autopilot in guided mode with ESCs unplugged, nothing happens. It should set the setpoints for velocity, but in looking at the logs, the dvelx and dvely did not change to comply. 

I know this is possible using the Px4 stack, but I would prefer to avoid the complexity of switching to that and stick with the ardupilot firmware on the pixhawk. 

My questions:

  • Is this offboard control capability implemented in Arducopter?  (including setpoint override control of position, attitude, and velocities)
  • If it isn't right now, is this an upcoming feature?
  • If still not, is there an equivalent way to do this that is implemented?
  • If not, do you have any other suggestions or should I continue the switch to Px4 stack?

Hardware: Pixhawk,RPi, 

Software: Arducopter 3.2.1,  Ubuntu/mavros

You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –


  • Hi, What are the values you published to "setpoint_velocity" topic to control pitch and roll. Could you please share the code snipet if possible. Thanks

  • Hi Jefferson,

         I am trying to control the drone with companion computer using mavros , I want to know how to set the launch file so I can use APM stack, Is it all the same with px4 stack and using qgroundcontrol?

  • Hi  Vinh,

    In case you are still trying to use OPTICAL control..

    Are you trying to use OPTICAL CONTROL with camera on the DRONE or external camera?

    ON DRONE control can be done using PX4FLOW, a 3DR camera..

    Unfortunately this is all I have at this time.

    Offboard can be done  using a setup similar to what Mr. Jaeyoung Lim does in video 1

    the link is below:

    Offboard control

    Vinh K said:

    Hi David, were you able to get send velocity commands to make your drone move autonomously with GPS?

    I am using only optical flow, but I am not sure how to implement it.

    Jaeyoung Lim
    Read all of the posts by Jaeyoung Lim on 404warehouse
  • Yes!  Sorry I never posted when I found more information. I guess when no one else seemed interested I just kinda forgot about it. 

    If it is in guided mode, setpoint velocity commands do work. I honestly don't remember all of the details off the top of my head, but I am pretty sure it must be on the copter 3.3 which was probably what caused my problem when I posted this. It's been a while so I am a little fuzzy. But I think this is how it goes.

    Firmware must be arducopter 3.3 or higher
    Set to guided mode
    Send setpoint_velocity command
    Watch it work!

    I was definitely able to get this to work fairly well, although I never did implement it completely. (My job on the project ended at proving that it worked). If you have any questions let me know, I can't promise anything but I'll dig up what I can.

    • Hey thanks for the quick response Jefferson!! I'm working some vision guidance that will use a companion computer (probably a Jetson TK1).  Like you, I prefer the arducopter vice PX4 firmware. Next step is to understand how to get the mavlink code working in c or c++, rather than run it in python. 

      • where you able to get it working on c++. Ive done the example from but I need more information on how exactly to request the FCU for velocity, accel, 3d pos and orientation.

        Introduction · PX4 Developer Guide
  • Anyone have an answer to this?

This reply was deleted.


DIY Robocars via Twitter
DIY Robocars via Twitter
May 14
DIY Robocars via Twitter
May 13
DIY Robocars via Twitter
RT @f1tenth: Say hi to our newest #F1TENTH creation for @ieee_ras_icra next week in Philly. It’s going to be huge! 😎 🔥 @AutowareFdn @PennEn…
May 13
DIY Robocars via Twitter
May 11
DIY Robocars via Twitter
May 8
DIY Robocars via Twitter
RT @SmallpixelCar: Noticed my car zigzagged in last run. It turned out to be the grass stuck in the wheel and made the odometry less accura…
May 8
DIY Robocars via Twitter
RT @SmallpixelCar: Test my car. RTK GPS worked great. Thanks @emlid for their support.
May 8
DIY Drones via Twitter
RT @chr1sa: @kane That's @diydrones circa 2009. Still have a box of those Canon cameras that we used to strap into planes, just like this.…
May 3
DIY Robocars via Twitter
RT @chr1sa: Our next @diyrobocars race is going to be outside at a real RC racetrack in Fremont on May 28. Fully autonomous racing, head-to…
Apr 30
DIY Robocars via Twitter
RT @f1tenth: Our Spring 2022 F1TENTH course @PennEngineers is coming to an end with a head-to-head race as a big finale. So proud of our st…
Apr 26
DIY Robocars via Twitter
RT @DanielChiaJH: I wrote a thing! Throughout the development of my @diyrobocars car I've been using @foxglovedev Studio to visualize and d…
Apr 23
DIY Robocars via Twitter
RT @SmallpixelCar: My new car for high speed. Low body, everything ( @NVIDIAEmbedded Jetson Xavier NX, @emlid RTK GPS, IMC) under the deck…
Apr 23
DIY Robocars via Twitter
Apr 21
DIY Robocars via Twitter
RT @f1tenth: F1TENTH Race training setup @PennEngineers for our upcoming ICRA2022 @ieee_ras_icra competition. @OpenRoboticsOrg @IndyAChalle…
Apr 21
DIY Robocars via Twitter
RT @fatcatFABLAB: Proud to be hosting a restarted DIY Robocars NYC Meetup April 26. Come by if you want to talk about and race self-driving…
Apr 17