Rally Point Protocol (Newbie in study)

Hello,

I’m new to MAVLink development and was starting to build a code for a companion computer for a very specific job using a copter.

In the Mission Protocol I could find everything related to the mission planning, uploading and downloading of missions and so on.

Now I was trying to set some rally points for the copter (using version 3.6) but I could’nt find information on how to add/delete/upload/download Rally Points to the copter.

So I tried to add a Mission Item with the MAV_CMD_NAV_RALLY_POINT message, MAV_FRAME_GLOBAL_RELATIVE_ALT frame and MAV_MISSION_TYPE_RALLY mission type, but I only get unsupported as response. The only information I say was “Rally points are supported by ArduPilot, but are not managed using this protocol”

I used Mission Planner to set the rally points and all went well, so I guess its not something about the copter itself, just the way to use the MavLink messages

Can someone point me to the direction on how to get information regarding the subject?

Thanks in advance.

Best Regards,

1 Like

AFAIK the rally points are transfered using this protocol: https://mavlink.io/en/services/mission.html

No.

Currently we send them up by setting a parameter to indicate count, and
then pushing them up with RALLY_POINT. It’s awful.

My PR: https://github.com/ArduPilot/ardupilot/pull/10409 seeks to change
that to use the “mission protocol” for rally points and fence items.

1 Like

how exactely do I “push them with RALLY_POINT”, I have set the RALLY_TOTAL to a number different than 0 and tried to send a MissionItem, but it didn’t work, then I tried to send with Command (5100 MAV_CMD_NAV_RALLY_POINT) but also didn’t work.

Thanks in advance

Hi Mateus,

I’ve also been facing this issue. As far as I can tell the Rally Point Protocol is un-documented.

I believe it goes like this (Using Mision planner 1.3.68 and ArduPlane 3.9.8):

Mission planner sends A Msg_Rally_Point (in ArdupilotMega.xml)
ArduPilot sends nothing.
Mission planner follows up on it’s previous message with Msg_Rally_Fetch_Point
ArduPilot replies with a Msg_Rally_Point (same id as requested)
Mission planner is very happy so it sends a few Msg_Fence_Fetch_Point’s for good measure (I don’t know why… perhaps my lack of knowledge)
Mission planner seems to repeat this cycle a few times until it is very sure that the new rally points have been accepted (Again possibly my error, but it does seem to accept my Msg_Rally_point reply…)

I would rather see a ‘Mission protocol’ style implementation or at least some documentation of what it’s meant to be because it’s not immediately obvious.

Thanks :slight_smile:

I’ve also been facing this issue. As far as I can tell the Rally Point Protocol is un-documented.

Oh, it is documented - the code’s open source :wink:

I believe it goes like this (Using Mision planner 1.3.68 and ArduPlane 3.9.8):

Mission planner sends A Msg_Rally_Point (in ArdupilotMega.xml)
ArduPilot sends nothing.
Mission planner follows up on it’s previous message with Msg_Rally_Fetch_Point
ArduPilot replies with a Msg_Rally_Point (same id as requested)
Mission planner is very happy so it sends a few Msg_Fence_Fetch_Point’s for good measure (I don’t know why… perhaps my lack of knowledge)
Mission planner seems to repeat this cycle a few times until it is very sure that the new rally points have been accepted (Again possibly my error, but it
does seem to accept my Msg_Rally_point reply…)

Yeah, close. The number of rally points has to be set in a parameter
before you can start all of that stuff.

I would rather see a ‘Mission protocol’ style implementation or at least
some documentation of what it’s meant to be because it’s not immediately
obvious.

We’ve had that for weeks :wink: You must be using MAVLink2 for it to
work - but if you use the master version of ardupilot and the master
version of QGC you can see it in action. I’m actively working on
uploading fences in the same way.

Yours,

Ah ok thank you for clearing that up, we look forward to seeing it in a stable version of QGC.

I agree about the Rally point parameter, I had forgotten about it as it doesn’t seem to be required if you don’t change the number of rally points.

Regards,