Does the SET_POSITION_TARGET messages return any value or acknowledge the command? I am sending the command and the vehicle in simulation responds accordingly, however, I do not receive a MAV_RESULT_ACCEPTED or anything of that nature.
Thanks.
Does the SET_POSITION_TARGET messages return any value or acknowledge the command? I am sending the command and the vehicle in simulation responds
It does not. MAV_RESULT_ACCEPTED related to mavlink commands, not
mavlink messages generally (FWIU).
accordingly, however, I do not receive a MAV_RESULT_ACCEPTED or anything of that nature.
Your best bet is to monitor the POSITION_TARGET messages.
Yours,
I set up my software to listen for the position target messages (both global/local variants just to be sure) and I am not seeing them fire at all. I am currently running this through the simulation. Can anyone confirm that these messages are indeed reported when streaming the set_position_target commands to the autopilot?
While interestingly it appears that the GCS common implements a call only to the global target as seen below
case MSG_POSITION_TARGET_GLOBAL_INT:
CHECK_PAYLOAD_SIZE(POSITION_TARGET_GLOBAL_INT);
send_position_target_global_int();
and both arducopter and arduplane overload the imposed virtual function from gcs_mavlink, however there never appears to exist a case MSG_POSITION_TARGET_LOCAL_NED to perform the callback. So far I have only been testing in the LOCAL NED frame. I will check tomorrow but I believe this is the root cause of why I am not seeing the message as it has yet to have been implemented.
While interestingly it appears that the GCS common implements a call only to
the global target as seen belowcase MSG_POSITION_TARGET_GLOBAL_INT:
CHECK_PAYLOAD_SIZE(POSITION_TARGET_GLOBAL_INT);
send_position_target_global_int();
This is the send-side; this is sending the GCS the current position target
in global frame.
MSG_POSITION_TARGET_LOCAL_NED to perform the callback. So far I have only
been testing in the LOCAL NED frame. I will check tomorrow but I believe
this is the root cause of why I am not seeing the message as it has yet to
have been implemented.
That’s where you can set the position target in local NED
You are absolutely correct - surprisingly, we don’t actually send out
POSITION_TARGET_LOCAL_NED messages!
Peter
Please do. It’s something we should do once we have the message-intervals
PR in.
Github issue has been created. For those looking to have a record trace, the github issue can be found here. https://github.com/ArduPilot/ardupilot/issues/8686
@peterbarker is there a way to confirm that POSITION_TARGET_GLOBAL_INT is even being transmitted?
I am sending the SET_POSITION_TARGET_GLOBAL_INT command at the required interval and not seeing this being advertised.
I implemented the sending of POSITION_TARGET_GLOBAL_INT in Copter less
than a month ago - it probably isn’t in the 3.6 betas.
Are you in a position to try master?