Possible to send and start mission via uORB/DDS?

Hi Everyone!

I have a question on missions. Is it possible to upload a mission via DDS/uORB? I have a Raspberry Pi 4 running a ROS2-node connected via serial to a pixhawk 4 mini running px4 v1.14. I would like to have the possiblity to either run offboard-control or run a mission from the ROS2-node.
At the moment I use MAVSDK to run a mission. This works perfectly in SITL. But now I would like to test my setup in HITL. It was told to me, that i cant send MAVLINK over DDS per default. To accomplish this I need to install a protocol-splitter on the Raspberry Pi. If possible, i would try to avoid this additional configuration of the Raspberry.

Thanks in Advance,

Hi @tobias , protocol splitter was available with the microRTPS, the previous bridge available up to v1.13.
Allowing MAVLING over uXRCE-DDS (the new bridge for v1.14) is not implemented yet.

The easiest workaround would be to add a second serial link just for MAVLINK.

Hi Benja,
Thanks for the information. Its a good idea to add a additional serial-connection for mavlink.
I have still the hope, that I can send the mission data via uORB. If Im not mistaken, I can start a mission with the “VehicleCommand” message. I have also found the “NavigatorMissionItem” message but i guess that is a intermediate message and it wouldnt help to publish the MissionItems to that topic. Could you maybe state if its possible to send a mission via uORB, just so i dont waste time investigating this, if its just not possible :smiley:

I honestly don’t know. There are some MAVLINK “features”, like parameter change, that do not have a corresponding uorb topic or that are directly implemented on the PX4 mavlink module. I don’t know if missions are one of them.
You could ask this question on Wednesday’s Q&A!

1 Like