The MAVSDK team is happy to make the v0.40.0 release available to the community.

What’s In v0.40.0

  • Initiate UDP connection from MAVSDK
  • Added a new API for actuators on the Actions plugin for the MAVLink MAV_CMD_DO_SET_ACTUATOR actuator command (`set_actuator`)
  • Tons of bug fixes and enhancements.

Read the full MAVSDK v0.40.0 Release Notes here.

About the new UDP connection feature

MAVSDK can send heartbeats to a UDP remote if provided with an IP on the connection string instead of waiting for heartbeats from the vehicle.

As an example, let’s look at what add_any_connection("udp://[IP][:PORT]") did before and after.

# Before:


We listen on all network interfaces on port 14540.


We listen to UDP to port 14540 arriving at our network IP (So would be our computer.)

This means that here we filter UDP packets by which network they arrive at. From experience this is not something that is generally used, so we’ve removed that “filtering” capability.

# After:


We listen on all network interfaces on port 14540, same as before.


This is new. We now initiate a MAVLink connection by sending out MAVLink heartbeats to UDP port 14557. (In this case would be the drone.)

Actuator Support

Thanks to the new `set_actuator` command in the `Actions` plugin, we bring support for the `MAV_CMD_DO_SET_ACTUATOR` MAVLink command, which allows for control of any type of actuators. It’s important to note that the PX4 Autopilot also supports this command thanks to contributions from the same author. Thank you @coderkalyan 🎉

How To Get The Release

You can try the latest release directly from GitHub. You can build the source or try the pre-built binaries available from GitHub and other familiar sources (package managers) depending on your OS. 

Check out the Installation Guide on our docs here

More Support

  • Join the community at the PX4 Slack, and post in channel #MAVSDK
  • Post in the PX4 Discuss category MAVSDK