Difference MAVLink and MAVROS

#1

Hi there
I have a very basic question:
What exactly is the difference between MAVlink and MAVROS?
To be clear:
I wan’t to control my Pixhawk with a companion computer to use offboard mode.
Someone suggested me to use ROS/MAVROS.

But I don’t unterstand why I should use MAVROS? Can’t I just write a C++/C file in Eclipse and run it on my companion computer? To send setpoints for example…
Why should I just MAVROS or what is the difference between using MAVLink directly and using MAVROS?

THANK YOU!

#2

MAVROS is the bridge between MAVLink and ROS. If you’re using ROS for whatever robotics you’re doing, then MAVROS is great.

If all you want is to write a simple C++ program to talk to a PX4 drone, then you should consider using the Dronecode SDK.