This is a request for the PX4 Dev Team to chime in on the purpose and functionality of these hidden flight setpoint typemasks featured below
bool is_takeoff_sp = (bool)(set_position_target_local_ned.type_mask & 0x1000);
bool is_land_sp = (bool)(set_position_target_local_ned.type_mask & 0x2000);
bool is_loiter_sp = (bool)(set_position_target_local_ned.type_mask & 0x3000);
bool is_idle_sp = (bool)(set_position_target_local_ned.type_mask & 0x4000);
I have been experimenting with outdoor autonomous flight with “success”
What I would like is for somebody to explain what each of these type_masks is used for and how it should be used by a companion computer.
#Land Setpoint#
Based on observation today, the land setpoint typemask is incredible, it simply lands the vehicle at the x,y position specified but ignores the z position request.
#Takeoff setpoint?#
Based on observation the takeoff setpoint also seems to ignore any z-position request.
So would it be best to monitor the position, then change the setpoint bitmask once the desired altitude has been achieved?
#Loiter Setpoint?#
Based on observation this renders the UAV immobile. regardless of the position requested the UAV simply loiters.
So would it be best to apply this setpoint when loitering is desired and movements are undesirable?
#Idle Setpoint?#
Based on observation this setpoint is best if used directly after arming the vehicle to keep the props from spinning uncontrollably?
Is this assumption (will cause the props to spin at default rate), valid?